yzx99

导航

 

第二句是:
window.undefined = window.undefined;
我开头就在上面写上这样的注释:废话 注释掉
后来查了网络,才知道,这是为了兼容以前的旧版本。从微软的JScript帮助文档中看出“undefined 属性”的版本要求是5.5,即5.5以前的版本,window.undefined没有定义。但undefined这种东西是一直存在的,这样window.undefined = window.undefined就能让window.undefined等于undefined这种东西。

有undefined与没有undefined的区别如下:
有undefined时,可以这样写
var a;
if (a==undefined) alert("OK1");
没有undefined时,只能这样写
var a;
//window.undefined=""; //这里是把undefined给取消
//if (a==undefined) alert("OK1"); //这句就没效果了
if (typeof(a)=="undefined") alert("OK2");

jQuery中有很多处直接使用undefined进行判断,所以前面要加上这一句。

其它的方法还是有的,如:
window["undefined"] = window["undefined"]; //属性的另外一种表达方法而已,Ext就是使用该表达的
window.undefined = void null;  //void函数永远返回undefined
window.undefined = function(){}();
window.undefined = void 0;
以及其它一些肯定没赋值的乱七八糟变量。

但对我目前没有意义,因为我的“客户”有限,很容易把大家的IE统一升为6。我想检测IE5下面存在的问题都困难。

posted on 2008-07-28 11:40  yzx99  阅读(300)  评论(0编辑  收藏  举报