我发现用括号包装不同的语句会返回最后一个。
(34892,47691876297,2000) => 2000
('test',73,document.createElement('p')) => <p></p>
而且我还发现所有的语句都会被执行。
(console.log('test'), console.log('test2'), console.log('test3'), 6)
会记录。
test
test2
test3
结果是6.
但是,我还发现,有些语句不能用。
(throw new Error(), 10) => SyntaxError: Unexpected token throw
(if (1) console.log('test'), 5) => SyntaxError: Unexpected token if
那么,这个括号逗号的符号有什么用呢?你可以轻松地执行所有的语句,然后使用最后一条语句的值。这是做什么用的?我是不是用错了?
这就是逗号操作符:)
它让你可以从左到右评估表达式,返回最后一个操作数的结果(在你的例子中,这个结果没有存储在任何地方,而且是完全有效的)。
参考文献。
最明显的一点就是允许在for循环中使用多个表达式。
for (let x=3, y=6; x < 10; x++, y++) {...}
^^^^^^^^
这就是逗号运算符,也就是你提供的例子中的那个运算符。
return (x, y)