浅谈窗口对象的重写方法
重写窗口对象的方式不是新奇的,例如,我们可能需要改变默认警报的行为,以及如何安全地重写它
这是看一个著名的IT网站的方式。
复制代码代码如下所示:
window.alert =函数(){ };
也许
复制代码代码如下所示:
警报=函数(){ };
事实上,这种书写方式有些不妥,这相当于在窗口对象上添加了一个警报属性。它的优先级高于系统内置的警报,因此可以实现重写的效果,但是很容易突破。如果执行以下语句,我们将恢复警报。
复制代码代码如下所示:
删除window.alert;
因为以这种方式重写的警报只是窗口对象的一个属性,所以可以通过删除操作符删除它。
它如何被永久地重写和不可逆转
只定义一个全局变量。虽然全局变量也被注册为窗口对象的属性,但是它不能被删除,实际上它是绝对的:
复制代码代码如下所示:
Var(警报=函数){ };
这种重写方法绝对不减少,安全可靠!
tag:对象方法重写重写方法浅谈
相关内容