如何解决是否有任何主流浏览器未保留JavaScript对象中的插入顺序?
| 我可以依靠以下代码在a
之前警告b
吗?
var x = {}
x[\'b\'] = 1
x[\'a\'] = 0
for(var i in x) {
alert(i)
}
解决方法
对于Google Chrome中使用的V8 JavaScript引擎,进行了类似的讨论:
http://code.google.com/p/v8/issues/detail?id=164
最好不要依赖未记录的功能。而且,如果您使用数字作为键,肯定会出错。
例如,这在某些浏览器中会中断:
var x = {}
x[\'b\'] = 1
x[\'2\'] = 20
x[\'a\'] = 0
x[\'1\'] = 10
for(var i in x) {
alert(x[i])
}
顺便说一句,alert(x[i])
。
, 是否有任何主流浏览器未保留JavaScript对象中的插入顺序?
直到最近,至少有一个主要的浏览器做了(我认为V8引擎不会保留顺序)。
我可以依靠以下代码在a之前警告b吗?
否。规格说明没有订单。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。