初始化前无法访问'y' javascript

Cannot access 'y' before initialization javascript

我正在尝试使用数组解构交换两个变量的值,但是我收到错误 Cannot access 'y' before initialization。有人可以解释为什么它不起作用并提供解决方案

我的代码:

    let x = 'bob'
    let y = 'john'
    
    [x, y]=[y, x]
    
    console.log(x, y)

错误:Cannot access 'y' before initialization

缺少分号

let x = 'bob';
let y = 'john';

[x, y]=[y, x];

console.log(x, y)