交換兩個值的陣列解構賦值無法實現,不使用分號(;)
P粉714780768
P粉714780768 2023-08-10 14:21:03
0
1
459
<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粉714780768
P粉714780768

全部回覆(1)
P粉212971745

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

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

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

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板