gpt4 book ai didi

javascript - Internet Explorer 9 是否会因为数组和对象文字末尾的额外逗号而窒息?

转载 作者:IT王子 更新时间:2023-10-29 03:23:13 25 4
gpt4 key购买 nike

现代浏览器和 Node.js 等环境允许您说 {a:1, b:2,} 或 [1,2,3,]。这在历史上一直是 Internet Explorer 的问题。这在 Internet Explorer 9 中已修复吗?

最佳答案

对此有两种不同的答案,一种针对对象初始值设定项中的悬挂逗号,另一种针对数组初始值设定项中的悬挂逗号:

对于对象初始化器,例如:

var obj = {
a: 1,
b: 2,
c: 3,
};

它已在 IE8 及更高版本中修复。在这里测试:http://jsbin.com/UXuHopeC/1 (source)。 IE7 及更早版本将在 } 上抛出语法错误在逗号之后。

对于数组初始值设定项,例如:

var arr = [
1,
2,
3,
];

它在 IE9 及更高版本中已“修复”。在这里测试:http://jsbin.com/UXuHopeC/2 (source)。 IE8 及更早版本将为该数组提供四个 个条目,最后一个的值为undefined。 . IE9 及更高版本给它三个条目。

我把“fixed”放在引号中是因为规范最初并不清楚数组是否应该有一个最终的undefined。是否进入,所以这两种行为都不正确。只是 IE 走了一条路,而其他所有人都走了另一条路。 :-)

关于javascript - Internet Explorer 9 是否会因为数组和对象文字末尾的额外逗号而窒息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5036618/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com