类似语法的奇怪元组令人困惑

时间:2017-04-27 16:52:21

标签: javascript ecmascript-6

我在这个笨拙的代码中突然想到这一点,并想知道这意味着什么。它类似于元组,但不支持

const typeRep = (0, (...args) => makeValue(fields, proto, args))

在parnes声明的第一个位置0的目的是什么?我尝试了几个简单的例子

const t = (1, 10)
//=> 10

const t = (1, 10, 100)
//=> 100

据我所知,除了parens中的最后一项外,所有表达都会丢掉。是否有人对这里发生的事情有所了解?

1 个答案:

答案 0 :(得分:0)

comma operator的目的令人困惑,并在original source中记录了评论:

// this way we avoid named function
const typeRep = (0, (...args) => makeValue(fields, proto, args))

这是什么意思?他们不希望typeRepimplicitly get a .name = "typeRep" property,因此他们明确避免使用将箭头函数表达式直接分配给标识符的构造。