读书人

delete在IE失效求解,该如何解决

发布时间: 2012-03-13 11:21:11 作者: rapoo

delete在IE失效,求解
请看下面一段JS代码:

JScript code
function test(){    this.str = "helloworld";    alert(this.str);    delete this.str;    alert(this.str);    alert("end");}

这段代码好像没有错误,但是在IE执行的结果只有“helloworld”,后面的两个警告没有执行到。
但是换成火狐,结果就是“helloworld”,“undefined”,“end”.

不知道为什么会这样,求高手指教!

[解决办法]
http://m.oschina.net/blog/28926
在IE下delete失败返回false
[解决办法]
如果你这样调用 : test();
这时this指向window, 在IE下window的属性不能被删除
所以如果你这样调用:new test();
这是this指向object,这时结果就一样了
[解决办法]
探讨

如果你这样调用 : test();
这时this指向window, 在IE下window的属性不能被删除
所以如果你这样调用:new test();
这是this指向object,这时结果就一样了

读书人网 >JavaScript

热点推荐