【发布时间】:2018-09-01 20:43:27
【问题描述】:
我正在控制台中执行类似以下代码的操作
function add(a,b){return a+b;};
const obj = {...add};
令我惊讶的是,它没有引发错误。也没有
const obj = {...123};
扩展语法应该只适用于可迭代的实体,如对象、数组、字符串、映射、集合等。 那么为什么在使用不可迭代实体时它不会抛出错误呢? 还是我在这里遗漏了什么?
【问题讨论】:
-
在 ES2018 规范之前的时代,你是对的。然而,随着 ES2018 的发布,spread syntax for object initializers.
标签: javascript ecmascript-6 spread-syntax