相关疑难解决方法(0)

允许重复属性名称的目的是什么?

我正在阅读MDN javascript参考,因此以下代码不再返回false:

function haveES6DuplicatePropertySemantics(){
  "use strict";
  try {
    ({ prop: 1, prop: 2 });

    // No error thrown, duplicate property names allowed in strict mode
    return true;
  } catch (e) {
    // Error thrown, duplicates prohibited in strict mode
    return false;
  }
}
Run Code Online (Sandbox Code Playgroud)

在ECMAScript 5严格模式代码中,重复的属性名称被认为是SyntaxError.通过引入计算属性名称可以在运行时进行复制,ECMAScript 6已经删除了此限制.

我的问题是,在初始化器中允许重复的属性名称有什么实际好处?我可以看到,当动态分配对象属性时,有时会发生这种情况,但由于优先顺序显然决定了在新创建的对象上实际设置了哪些属性 - 这似乎不仅仅是最好避免的无限行为.

javascript standards ecmascript-6

20
推荐指数
1
解决办法
4444
查看次数

标签 统计

ecmascript-6 ×1

javascript ×1

standards ×1