首頁  >  問答  >  主體

交換兩個值的陣列解構賦值無法實現,不使用分號(;)

<p><br /></p> <pre class="brush:php;toolbar:false;">let [x, y] = [10, 20] [y, x] = [x, y] console.log(x, y)< /pre> <p>它沒有按預期工作,給了我一個錯誤...</p> <blockquote> <p>Uncaught ReferenceError: Cannot access 'y' before initialization</p> </blockquote> <pre class="brush:php;toolbar:false;">let [x, y] = [10, 20]; // 在這裡使用分號[y, x] = [x, y] console. log(x, y)</pre> <p>現在它可以正常工作,請有誰可以解釋為什麼它現在可以工作...</p>
P粉714780768P粉714780768437 天前425

全部回覆(1)我來回復

  • P粉212971745

    P粉2129717452023-08-11 12:51:28

    首先你需要先宣告 x 和 y,而且在一行的語句後面需要使用分號。

    let x, y; [x, y] = [10, 20]; [y, x] = [x, y]; console.log(x, y)

    #編輯:對不起,你不需要事先聲明它們,但是在指令之間要使用分號進行分隔。

    回覆
    0
  • 取消回覆