Rumah >hujung hadapan web >tutorial js >Mengapa Pemusnahan Objek Memerlukan `var`, `let`, atau `const`, Tetapi Pemusnahan Tatasusunan Tidak?
Pemusnahan Objek tanpa var, let atau const
Dalam JavaScript, pemusnahan objek boleh gagal dengan SyntaxError jika ia tidak diisytiharkan dengan betul.
{a, b} = {a: 1, b: 2};
Ralat ini berlaku kerana operator {...} mempunyai pelbagai makna. Apabila ia muncul pada permulaan pernyataan, ia mewakili blok, yang tidak boleh ditugaskan. Untuk menyelesaikan isu ini, anda perlu mengisytiharkan pembolehubah secara eksplisit menggunakan var, let, atau const:
var {a, b} = {a: 1, b: 2};
Soalan Bonus: Mengapa Kita Tidak Memerlukan var untuk Pemusnahan Array?
Tidak seperti pemusnahan objek, pemusnahan tatasusunan tidak memerlukan pengisytiharan kerana ia tidak melibatkan penciptaan pembolehubah baharu. Sebaliknya, ia memberikan semula nilai kepada pembolehubah sedia ada dalam skop.
[c, d] = [1, 2];
Di sini, [c, d] ialah ungkapan yang menetapkan semula nilai tatasusunan [1, 2] kepada pembolehubah c dan d .
Ringkasnya
Pemusnahan objek memerlukan pengisytiharan (var, let, atau const) jika ia bukan sebahagian daripada pernyataan blok untuk menyahkekaburannya daripada sintaks blok. Pemusnahan tatasusunan, sebaliknya, tidak memerlukan pengisytiharan kerana ia menetapkan semula nilai kepada pembolehubah sedia ada.
Atas ialah kandungan terperinci Mengapa Pemusnahan Objek Memerlukan `var`, `let`, atau `const`, Tetapi Pemusnahan Tatasusunan Tidak?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!