Home > Web Front-end > JS Tutorial > How to Achieve the Equivalent of PHP\'s htmlspecialchars in JavaScript?

How to Achieve the Equivalent of PHP\'s htmlspecialchars in JavaScript?

DDD
Release: 2024-12-03 02:06:13
Original
176 people have browsed it

How to Achieve the Equivalent of PHP's htmlspecialchars in JavaScript?

JavaScript Equivalent to PHP's htmlspecialchars

In JavaScript, there is no built-in function directly analogous to PHP's htmlspecialchars for converting HTML special characters to character entities. However, there are custom solutions that can achieve a similar result.

Custom Implementation

One approach is to define a custom function that manually translates each special character. For instance:

function escapeHtml(text) {
  return text
      .replace(/&/g, "&")
      .replace(/</g, "<")
      .replace(/>/g, ">")
      .replace(/"/g, "&quot;")
      .replace(/'/g, "&apos;");
}
Copy after login

This function takes a string as input and replaces all occurrences of the following characters with their corresponding character entities:

  • & - &
  • < - <
    • >
  • " - "
  • ' - '
  • Improved Performance

    For better performance, especially with large texts, you can use a slightly optimized version:

    function escapeHtml(text) {
      var map = {
        '&': '&amp;',
        '<': '<',
        '>': '>',
        '"': '&quot;',
        "'": '&apos;'
      };
      
      return text.replace(/[&<>"']/g, function(m) { return map[m]; });
    }
    Copy after login

    This version uses a lookup table to store the character entity mappings, which eliminates the need for multiple replace operations.

    The above is the detailed content of How to Achieve the Equivalent of PHP\'s htmlspecialchars in JavaScript?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template