一道js代码填空题的解 window.alert = function(){};____;alert(1);
window.alert = function(){};window.alert = function(s){window.constructor.prototype.alert.call(window,s);};alert(1);重新定义了一个函数再去覆盖,后面的alert是这个函数而不是真正原本的alert.window.constructor是兼容性比较好的,如果使用Window对象则IE不支持。
方法3,iframe法。
新建一个空白iframe,这个iframe里的DOM就是干净的了,将这个iframe里的alert引用出来,也能让警告对话框弹出。
我只能说,想出这个方法的人真是不懂JS。
代码写的多写的复杂,并不代表水平高。
真正的代码高手,总是把代码写的更少、更简单。