"use strict";现在允许重复属性?

"use strict"; now allows duplicated properties?

刚发现在最后Chrome42和FF 37.0.2这行代码是完全合法的

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

(从 MDN 复制粘贴)

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

同时,

abc=0;

如预期的那样导致错误(未声明的变量)。

有人知道是什么导致了这种变化吗?

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