今天我接受了JS的面试,其中一个问题是
的价值是多少?
var a = (3,5 - 1) * 2;
嗯我假设它的8(chrome dev控制台也给它8)但我不知道为什么它是8。为什么省略3
?我的意思是你当然不能对它进行任何操作,但它仍然会消失,或者我错了?
请放轻松我。我想了解。任何有关此类行动的文章都将受到高度赞赏
答案 0 :(得分:2)
答案 1 :(得分:2)
3,5
它不是3.5
(浮动)。见comma operator
逗号运算符计算每个操作数(从左到右) 并返回最后一个操作数的值。
3,5等于5.
(3,5 - 1) * 2
转换为(5 - 1) * 2
,即8。
答案 2 :(得分:1)
参见此参考:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Comma_Operator
逗号运算符计算列出的所有表达式并返回最后一个。所以你的表达式简化为
(5 - 1)* 2