我正在运行以下代码:
const [a, b] = [1, 2]
const [c, d] = [3,4]
[a,b] = [b, a]
console.log(a, b, c, d)
预期结果:
2,1,3,4实际结果:
1,2,2,1我知道在每一行的末尾加上分号会解决问题,但我不明白为什么我会得到这样的结果,有人能解释一下为什么会发生这种情况吗?
发布于 2019-08-09 04:15:41
您可能希望使用var或let而不是const。您基本上是在做以下操作,因为您没有使用分号。a,b被分配给c,d
const [a, b] = [1, 2]
const [c, d] = [3,4][a,b] = [b, a]
console.log(a, b, c, d)
当你想要做的时候:
var [a, b] = [1, 2];
var [c, d] = [3,4];
[a,b] = [b, a];
console.log(a, b, c, d);
https://stackoverflow.com/questions/57423405
复制相似问题