[a,b] = [b,a]
上面的代码如何交换 a 和 b ?
我可以看到表达式的右侧创建了一个数组,但我不明白如何将它分配给左侧。
请看这个小提琴http://jsfiddle.net/sethunath/MqWKH/
更新:仅在 Firefox 中有效!
[a,b] = [b,a]
上面的代码如何交换 a 和 b ?
我可以看到表达式的右侧创建了一个数组,但我不明白如何将它分配给左侧。
请看这个小提琴http://jsfiddle.net/sethunath/MqWKH/
更新:仅在 Firefox 中有效!
JavaScript 1.7 添加了解构赋值,您正在那里观察。少数浏览器支持 JavaScript 1.7。然而,值得注意的是,当script
标签的type
属性为application/javascript;version=1.7
.
上面的代码不会交换a
,b
它会给你一个
Invalid left-hand side in assignment
你到底想做什么?在 Javascript 中,您不能以这种方式交换变量!
在浏览器中尝试:
[a,b] = [b,a]
结果:
ReferenceError: Invalid left-hand side in assignment
换句话说:这在 JavaScript 中是不允许的。
但是,CoffeeScript(编译为 JavaScript)可以。