jQuery源码分析——关键字或保留字作为对象属性时必须加引号,调用该属性时也只能使用[]调用,不可用.来调用...

本文探讨了在jQuery 1.8b1源码中,针对特定浏览器(如IE)处理JavaScript对象属性的方式。特别是当这些属性名与关键字或保留字相同时,如果不使用引号括起来,则会导致错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天读jquery(1.8b1)源码时,其中propFix对象中定义了一些特殊的属性映射关系,其中for,class两个属性单独使用引号括起来,感到很奇怪,测试了下,若不加引号,在神奇的IE下会报“缺少标识符”。

js对象中属性为关键字或保留字时若不加引号在IE下会报js错误。


测试用例如下:

var propFix = {

tabindex: "tabIndex",
readonly: "readOnly",
'for': "htmlFor", //< for,class不加引号的话在ie下会报“缺少标识符”
'class': "className",
maxlength: "maxLength",
cellspacing: "cellSpacing",
cellpadding: "cellPadding",
rowspan: "rowSpan",
colspan: "colSpan",
usemap: "useMap",
frameborder: "frameBorder",
contenteditable: "contentEditable"
};

alert(propFix['for']);
alert(propFix.for); //在IE下会报“缺少标识符”
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值