問い合わせが示唆しているように、PHP の htmlspecialchars は、翻訳時に HTML 特殊文字をエンコードする便利な方法を提供します。 JavaScript の対応する関数を使用すると、タスクが大幅に簡素化されます。
escape() や encodeURI() などの組み込み関数は期待どおりに文字エスケープを処理しませんが、利用可能な代替関数があります。
1 つのアプローチは、特定の関数を置き換えるカスタム関数を作成することです。文字:
function escapeHtml(text) { return text .replace(/&/g, "&amp;") .replace(/</g, "&lt;") .replace(/>/g, "&gt;") .replace(/"/g, "&quot;") .replace(/'/g, "&#039;"); }
この関数は入力テキストを反復処理し、特殊文字を HTML エンコードされた同等の文字に置き換えます。
パフォーマンスが最適化されたバージョン、広範なテキスト処理に適しています:
function escapeHtml(text) { var map = { '&': '&amp;', '<': '&lt;', '>': '&gt;', '"': '&quot;', "'": '&#039;' }; return text.replace(/[&<>"']/g, function(m) { return map[m]; }); }
この実装では、JavaScript オブジェクトを使用して特殊文字をマップします。正規表現の高速置換パフォーマンスを活用したエスケープ シーケンス。
以上が組み込み関数またはカスタム関数を使用して JavaScript で HTML 特殊文字をエスケープするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。