什么';在Javascript中,如何将括号内的列表表达式分配给变量?

什么';在Javascript中,如何将括号内的列表表达式分配给变量?,javascript,parentheses,Javascript,Parentheses,玩BabelRepl来检查如何使用变量作为对象文本属性名,我发现 var y = { [X] : 'x', [Y] : 'y' }; // is translated to: // ... _defineProperty definition ... var _y; var y = (_y = {}, _defineProperty(_y, X, 'x'), _defineProperty(_y, Y, 'y'), _y); 现在,我明白了在_defineProperty中发生了什么,但是

玩BabelRepl来检查如何使用变量作为对象文本属性名,我发现

var y = { [X] : 'x', [Y] : 'y' };

// is translated to:

// ... _defineProperty definition ...
var _y;
var y = (_y = {}, _defineProperty(_y, X, 'x'), _defineProperty(_y, Y, 'y'), _y);
现在,我明白了在_defineProperty中发生了什么,但是有人能解释一下括号里发生了什么吗

()
中的语句是否按顺序执行,并且只返回最后一个语句结果?

是。计算所有表达式并返回最后一个表达式的结果,例如

a(), b(), c(); // Calls `a`, `b` and `c`, and returns the value returned by `c`
在您的情况下,还需要使用包装括号,因为。

答案是“是”;)