Menulis semula kaedah objek tetingkap bukanlah perkara baru. Contohnya, kita mungkin perlu menukar tingkah laku amaran lalai.
Xiaocai melihat laman web IT yang terkenal ditulis seperti ini:
window.alert = function(){};
atau
makluman = function(){};
Sebenarnya cara penulisan ini agak tidak sesuai. Ini bersamaan dengan menambah atribut amaran pada objek tetingkap Keutamaannya adalah lebih tinggi daripada amaran terbina dalam sistem, jadi ia boleh mencapai kesan penulisan semula Walau bagaimanapun, ini mudah untuk dipecahkan berjaga-jaga.
padam window.alert;
Kerana amaran yang ditulis semula dengan cara ini hanyalah atribut objek tetingkap, ia boleh dipadamkan melalui pengendali padam.
Bagaimanakah kita boleh menulis semula secara kekal dan tidak boleh diubah?
Hanya tentukan pembolehubah global! Walaupun pembolehubah global juga akan didaftarkan sebagai atribut objek tetingkap, ia tidak boleh dipadamkan dan ia benar-benar wujud sebenarnya. Kodnya adalah seperti berikut:
amaran var = function(){};
Kaedah penulisan semula ini tidak akan dipulihkan, ia selamat dan boleh dipercayai!