工具用的順手嗎?
你的回饋能幫助我們做得更好
將HTML程式碼轉換為可直接嵌入JavaScript的跳脫字元串,便於動態生成網頁內容。
概覽
了解工具能解決的問題、計算或處理邏輯,以及資料邊界。
這項工具將貼上的 HTML 文字逐行包進 JavaScript 程式碼,方便檢查或複製到舊有腳本與固定模板。輸入是文字;輸出是程式碼文字,不會執行標記,也不會顯示 HTML 預覽。預設的「字串變數」模式會產生 var html =,每一行以單引號包住,再用 + 串接;你也可以切換外層為雙引號。轉換時會跳脫所選外層引號及原有反斜線,讓它們不會直接破壞字串定界。
例如輸入 <p class="note">Hi</p>,預設模式會得到 var html = '<p class="note">Hi</p>';。HTML 標籤、屬性和內容仍是原來的文字;這個轉換不等於 HTML 實體編碼,也不會判斷標籤是否正確。
「字串變數」適合需要把一段標記保存成變數的情況,多行預設以加號明確連接。另一種模式會為每一行產生一條 document.writeln(...); 呼叫。介面上的模式名稱可能簡寫為 document.write,但實際產生的是帶有 ln 的 writeln。此方法會把字串交給文件的 HTML 解析流程,屬於較舊的寫入方式,理解舊程式時可用來比對格式;新程式應先評估更合適的 DOM 或模板做法。
指南
依步驟完成操作,並透過範例核對輸入與結果。
在輸入區貼上要轉換的標記,也可載入內建示例;清除按鈕會移除目前輸入。多行縮排會保留在各自的字串內容中。
需要變數時保留「字串變數」;若是比對既有逐行寫入程式,選擇另一種模式。單引號開啟時,輸出以單引號定界並跳脫 HTML 中的單引號;關閉時改以雙引號定界並跳脫雙引號。
輸出會隨輸入及選項更新。可複製結果,或下載為 converted.js。貼回專案後,請在實際使用的 JavaScript 環境檢查語法與呈現結果。
使用預設的變數、單引號和加號串接模式,輸入如下:
<div class="card">
<p>歡迎</p>
</div>輸出會逐行包成字串並以 + 連接,概念如下:
var html = '<div class="card">' +
' <p>歡迎</p>' +
'</div>';若 HTML 屬性使用雙引號,預設單引號通常可減少屬性引號的跳脫;若內容本身有很多單引號,可以改用雙引號,再檢查輸出中哪些雙引號已加上反斜線。
情境
查看這項工具在不同工作與生活流程中的用法。
接手仍使用 document.writeln 的頁面時,可把待比對的 HTML 轉成逐行呼叫,檢視每行文字與引號,再由開發者決定如何重構。
需要把不含動態資料的標記放入變數或測試範例時,可先產生字串形式,再依專案習慣調整變數名稱與宣告方式,並進行語法檢查。
HTML 屬性引號與 JavaScript 外層引號交錯時,可切換單、雙引號觀察轉換差異,快速確認需要跳脫的字元。
問答
集中解答常見疑問與容易混淆的問題。
不會。工具只處理 JavaScript 字串表示方式,不解析標籤結構、不驗證 HTML,也不移除事件屬性或其他內容。
實際輸出每行都是 document.writeln(...);,方法名稱多了 ln。它會將文字交由 HTML 文件解析;若只是理解舊程式,可以用來核對格式。
不要直接假設可以。此選項會在非最後一行的字串內容後加上反斜線,形成與預設加號串接不同的多行輸出;建議關閉此選項,或複製後先用目標環境的語法檢查器驗證。
目前只提供一般引號字串變數與逐行 document.writeln 呼叫,不會產生反引號模板字串、插值、節點建立程式碼或事件處理程式。
須知
使用前了解適用範圍、結果限制與必要提醒。
把引號與反斜線寫成 JavaScript 字串可避免部分語法衝突,但不會讓 HTML 內容變得可信或安全。
document.writeln() 已不建議用於新程式,且在文件載入完成後呼叫可能改變或覆寫文件內容。避免把它當成一般動態內容插入方式。推薦
查找相關工具、專題與可用的 API 能力。