跳至主要內容
Lizely

HTML 轉 JavaScript 轉換工具

將原始的 HTML 轉成有效的 const 賦值,使用雙引號、單引號或模板字面量,並在本機正確轉譯所有分隔符與控制字元。

隱私權:你的檔案不會離開裝置,所有處理均在瀏覽器本機完成。

使用方式

  1. 1.請精確貼上 HTML 原始碼,如同最終字串中應出現的內容。
  2. 2.輸入一個非保留的 ASCII JavaScript 變數名稱。
  3. 3.選擇雙引號、單引號或模板字面量並進行轉換。
  4. 4.複製賦值結果,然後測試評估該字面量是否能完全還原原始文字,再整合至應用程式中。

關於HTML 轉 JavaScript 轉換工具

HTML 到 JavaScript 轉換器會將你提供的精確文字轉換為 JavaScript 常數指派。貼上片段或完整文件,選擇變數名稱,並選取雙引號字串、單引號字串或模板字面量,然後複製結果。轉換器會保護所選分隔符、反斜線、常見控制字元、行終止符及其他可能破壞產生來源的字元。模板模式也會轉義反引號和 ${ 序列,以避免貼上的 HTML 雙誤成為 JavaScript 的插值表示式。

這是一種文字序列化,而非 HTML 解析。標籤、屬性、空白字元、註解、實體、內聯樣式以及格式錯誤的標記在輸出中仍以文字形式保留。此工具不會建立 DOM、重新排序屬性、統一大小寫、修復未閉合標籤,或將 HTML 轉為 JSX。這種狹窄的範圍是故意的:格式化或解析工具可能改變對空白敏感的內容、指令碼、樣式、模板與內嵌資料。若你需要驗證或清理標記內容,請使用穩定的解析器並搭配針對目的地設計的安全策略。

字面量規則很重要,因為 HTML 常包含引號與多行內容。在雙引號模式下,雙引號會被轉義,單引號則保持可讀。單引號模式則相反。兩種模式都會將新行與歸位字元轉為字元編碼,而不是將禁止的原始行終止字元放入正常 JavaScript 字串中。反斜線會先被轉義,因此像 Windows 路徑、正規表示式文字或已有轉義的內容,其原始字元會在 JavaScript 評估產生的賦值後保留。U+2028 與 U+2029 會明確輸出以確保相容性。

模板字面量允許手寫程式碼中使用可讀的多行內容,但會引入兩種特殊風險。未轉義的反引號會關閉字面量,未轉義的 ${ 會啟動表示式插值。此轉換器會消除這兩種風險。它也會轉義反斜線與控制字元,而不是假設 String.raw 會解決所有語法問題。輸出結果是一種普通的無標記模板字面量;開發者若確實需要執行時插值,應在後續手動加入並審查每個表示式,而不是讓貼入的內容自動生成程式碼。

變數欄位接受一個保守的 ASCII JavaScript 識別字元,必須以字母、底線或美元開頭。保留字元如 class、const、for 與 return 會被拒絕,因為會產生無效的宣告。Unicode 識別字元在 ECMAScript 中可能有效,但限制產生名稱為清晰且跨版本的可移植子集,以避免視覺上易混淆的字元與版本相關的意外情況。此轉換器總是輸出 const。僅在你的應用程式確實需要重新賦值或不同模組模式時,才手動修改宣告。

產生的程式碼並非自動安全,可直接插入頁面中。若結果字串之後被賦值給 innerHTML、傳遞給模板引擎、作為程式碼執行,或與不可信資料合併,目的地仍需根據情境進行正確的轉義與清理。絕不使用 eval 或 new Function 來僅為了顯示 HTML。若不需要標記內容,請優先使用 textContent;若必須渲染不可信標記,則應搭配穩定的清理工具與限制性的內容安全策略。

所有運作皆在當前瀏覽器標籤頁中進行。HTML 不會上傳、儲存、執行、預覽或傳送至伺服器,也無需建立帳戶或新增依賴。測試已處理八種外部語法情況,包括引號、反斜線、新行、模板分隔符、插值語法與 Unicode 行分隔符。對於生產環境的生成器,應在隔離環境中評估複製的賦值,並確認其產生的字串與原始輸入完全一致。此往返檢查補充,但不取代本工具所使用的外部語言標準測試套件。

方法與來源

驗證一個保守的非保留 ASCII 識別字元,掃描輸入內容的 UTF-16 程式碼單元,轉譯反斜線、控制字元、行分隔符、所選分隔符與模板插值語法,然後輸出一個 const 賦值,且不解析或執行 HTML。

常見問題

這會將 HTML 轉為 JSX 或 DOM 呼叫嗎?
不會。它僅將 HTML 作為文字序列化為一個 JavaScript const 賦值,並不會解析或轉換標記內容。
為何模板模式會轉義 ${?
該序列會啟動 JavaScript 插值。轉義美元符號可確保貼入的內容以文字形式保留,而非被當作可執行的表示式語法。
產生的字串是否能讓不可信的 HTML 安全?
不會。渲染不可信標記仍需搭配穩定的清理工具、安全的 DOM API 與目的地特定的安全控制機制。

開發者工具 使用指南

查看全部