ホームページ > ウェブフロントエンド > jsチュートリアル > 組み込み関数またはカスタム関数を使用して JavaScript で HTML 特殊文字をエスケープするにはどうすればよいですか?

組み込み関数またはカスタム関数を使用して JavaScript で HTML 特殊文字をエスケープするにはどうすればよいですか?

Patricia Arquette
リリース: 2024-11-19 04:31:02
オリジナル
200 人が閲覧しました

How Can I Escape HTML Special Characters in JavaScript Using Built-In or Custom Functions?

JavaScript の組み込み関数を使用して HTML 特殊文字をエスケープしますか?

問い合わせが示唆しているように、PHP の htmlspecialchars は、翻訳時に HTML 特殊文字をエンコードする便利な方法を提供します。 JavaScript の対応する関数を使用すると、タスクが大幅に簡素化されます。

escape() や encodeURI() などの組み込み関数は期待どおりに文字エスケープを処理しませんが、利用可能な代替関数があります。

カスタム実装

1 つのアプローチは、特定の関数を置き換えるカスタム関数を作成することです。文字:

function escapeHtml(text) {
  return text
      .replace(/&/g, "&")
      .replace(/</g, &quot;&amp;lt;&quot;)
      .replace(/>/g, &quot;&amp;gt;&quot;)
      .replace(/&quot;/g, &quot;&amp;quot;&quot;)
      .replace(/'/g, &quot;&amp;#039;&quot;);
}
ログイン後にコピー

この関数は入力テキストを反復処理し、特殊文字を HTML エンコードされた同等の文字に置き換えます。

最適化バージョン

パフォーマンスが最適化されたバージョン、広範なテキスト処理に適しています:

function escapeHtml(text) {
  var map = {
    '&amp;': '&amp;amp;',
    '<': '&amp;lt;',
    '>': '&amp;gt;',
    '&quot;': '&amp;quot;',
    &quot;'&quot;: '&amp;#039;'
  };
  
  return text.replace(/[&amp;<>&quot;']/g, function(m) { return map[m]; });
}
ログイン後にコピー

この実装では、JavaScript オブジェクトを使用して特殊文字をマップします。正規表現の高速置換パフォーマンスを活用したエスケープ シーケンス。

以上が組み込み関数またはカスタム関数を使用して JavaScript で HTML 特殊文字をエスケープするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート