"使用严格&#34 ;;现在允许重复的属性?

时间:2015-04-29 07:19:26

标签: javascript google-chrome firefox strict

我刚刚发现在最后一个Chrome 42和FF 37.0.2中,这行代码是完全合法的

"use strict";
var o = { p: 1, p: 2 };

(从MDN复制粘贴)

在IE 10-11和Opera 28.0.1750中,它会按预期抛出错误。

同时,

abc=0;

按预期导致错误(未声明的变量)。

有人知道造成这种变化的原因吗?

1 个答案:

答案 0 :(得分:12)

这里有一个Bugzilla ticket。从我收集的内容(这里和我查找的其他页面),重复属性在ECMAScript版本6中是合法的,与ES5相反,在严格模式下禁止它。