什么';在Javascript中,如何将括号内的列表表达式分配给变量?
玩BabelRepl来检查如何使用变量作为对象文本属性名,我发现什么';在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中发生了什么,但是
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`
在您的情况下,还需要使用包装括号,因为。答案是“是”;)