Я пишу расширение Chrome , который включает в себя делает много следующей работу: дезинфицирующее строку , которые могут содержать теги HTML, путь преобразования <
, >
и &
в <
, >
и &
, соответственно.
(Другими словами, то же самое, что и PHP htmlspecialchars(str, ENT_NOQUOTES)
- я не думаю, что есть реальная необходимость преобразовывать символы двойных кавычек.)
Это самая быстрая функция, которую я нашел до сих пор:
function safe_tags(str) {
return str.replace(/&/g,'&').replace(/</g,'<').replace(/>/g,'>') ;
}
Но все еще есть большая задержка, когда мне нужно пропустить несколько тысяч струн за один раз.
Кто-нибудь может улучшить это? Это в основном для строк от 10 до 150 символов, если это имеет значение.
(Одна из моих идей заключалась в том, чтобы не беспокоиться о кодировании знака «больше» - будет ли это реальная опасность?)