JavaScript Setara dengan htmlspecialchars PHP
Menentukan sama ada terdapat fungsi JavaScript yang setara dengan htmlspecialchars PHP boleh menjadi satu cabaran. Walau bagaimanapun, pendekatan alternatif adalah untuk menentukan fungsi tersuai untuk tujuan ini.
Fungsi Tersuai untuk Melarikan Aksara HTML
Walaupun JavaScript tidak menyediakan fungsi terbina dalam secara khusus untuk melarikan aksara HTML, fungsi tersuai berikut boleh memenuhi keperluan ini:
function escapeHtml(text) { return text .replace(/&/g, "&amp;") .replace(/</g, "&lt;") .replace(/>/g, "&gt;") .replace(/"/g, "&quot;") .replace(/'/g, "&#039;"); }
Fungsi ini menerima rentetan sebagai input dan menggantikan mengikuti aksara khas dengan entiti aksara HTML yang setara:
→ >
Pengoptimuman Prestasi
Untuk prestasi yang lebih baik, terutamanya dengan blok teks yang besar, versi diubah suai fungsi berikut boleh digunakan:
function escapeHtml(text) { var map = { '&': '&amp;', '<': '&lt;', '>': '&gt;', '"': '&quot;', "'"': '&#039;' }; return text.replace(/[&<>"']/g, function(m) { return map[m]; }); }
Versi ini mencipta jadual cincang (peta) untuk memetakan aksara khas kepada entiti yang sepadan, kemudian menggunakan kaedah replace() untuk lakukan penggantian.
Atas ialah kandungan terperinci Adakah Terdapat JavaScript Setara dengan `htmlspecialchars()` PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!