var obj = {
'foo' : 'bar',
'something very, very, very, very long' : 'baz'
};
这个属性名的长度有限制吗?
var obj = {
'foo' : 'bar',
'something very, very, very, very long' : 'baz'
};
这个属性名的长度有限制吗?
根据我简短的实证研究,javascript 没有强制限制大小,至少在 Chrome 中是这样实现的。这只是一个问题,在应用程序崩溃之前应用程序允许脚本引擎使用多少内存。
在我的测试中,我成功创建了一个包含268435456个字符长名称属性的对象,但在尝试到536870912后,我的浏览器崩溃了。
我不认为比这更精确地找出我的极限会有任何兴趣,因为这应该证明任何存在的限制都完全是由机器容量而非规格所强加的。
哦,还有当分配属性时长度达到67108864个字符时,我开始注意到性能问题:)