喜欢
function myFunction(){
var undefined = "abc";
}
Run Code Online (Sandbox Code Playgroud)
如果它可能那么如何限制不允许?
有些浏览器允许它,限制它的最好方法是避免它.
但是......有些人正在使用这种技术来保留未定义的:
(function(undefined){
})()
Run Code Online (Sandbox Code Playgroud)
它们获取一个被调用的变量undefined但不传递给出undefined该undefined值的值.
来自jQuery的源代码:
(function( window, undefined ) {
...
...
})(window);
Run Code Online (Sandbox Code Playgroud)
是否有可能覆盖javascript中的undefined?
如果"未定义"是指全局undefined变量,则表示没有.从EcmaScript 5开始,它被指定为不可写.但是,旧版浏览器不遵守该规范,因此在旧版引擎中可以覆盖.你不能真正阻止它,但总是重置它undefined = void 0;.如果您仍然担心并想知道如何保护自己的脚本,那么请检查一下JavaScript中的危险性,确实假设未定义未被覆盖?.
喜欢
function myFunction(){ var undefined = "abc"; }
那是另一回事.您始终可以使用名称声明局部变量undefined(遮蔽全局变量)并为其指定任意值.
| 归档时间: |
|
| 查看次数: |
1783 次 |
| 最近记录: |