Saya menulis ekstensi Chrome yang melibatkan melakukan banyak pekerjaan berikut: membersihkan string yang mungkin berisi tag HTML, dengan mengonversi <
, >
dan &
menjadi <
, >
dan &
, masing-masing.
(Dengan kata lain, sama seperti PHP htmlspecialchars(str, ENT_NOQUOTES)
- saya rasa tidak ada kebutuhan nyata untuk mengonversi karakter kutip ganda.)
Ini adalah fungsi tercepat yang saya temukan sejauh ini:
function safe_tags(str) {
return str.replace(/&/g,'&').replace(/</g,'<').replace(/>/g,'>') ;
}
Tapi masih ada kelambatan besar ketika saya harus menjalankan beberapa ribu string sekaligus.
Adakah yang bisa memperbaiki ini? Ini sebagian besar untuk string antara 10 dan 150 karakter, jika itu membuat perbedaan.
(Satu gagasan yang saya miliki adalah untuk tidak repot-repot menyandikan tanda lebih besar dari - apakah ada bahaya nyata dengan itu?)