PHPのhtmlspecialcharsをjavascriptで記述する

PHPのhtmlspecialcharsをjavascriptで記述する

PHPのhtmlspecialcharsをjavascriptのコードで置き換えます。htmlspecialchars関数は対象となる文字をエスケープします。

対象文字はENT_QUOTES指定の場合「”&'<>」です。

echo htmlspecialchars("\"'<>&",ENT_QUOTES); // &quot;&#039;&lt;&gt;&amp;

js

jsで置き換えるには、replaceメソッドで正規表現を用いて変換します。

function htmlspecialchars(text = '') {
  return text.replace(/["&'<>]/g, function (match) {
    return {
      '&': '&amp;',
      '\'': '&#39;',
      '"': '&quot;',
      '<': '&lt;',
      '>': '&gt;'
    }[match]
  })
}
htmlspecialchars('"\'<>&') // '&quot;&#39;&lt;&gt;&amp;'

参考サイト

PHP: htmlspecialchars - Manual

コメント

タイトルとURLをコピーしました