Զանգվածի դեստրուկտուրացման ժամանակ փոփոխականների հայտարարումը JavaScript-ում

Դեստրուկտուրացման ժամանակ պարտադիր չէ հայտարարել փոփոխականները։ Դրանք կարող են նախապես հայտարարված լինել, և ապա վերագրելիս հարկավոր չի լինի գրել let հրամանը։

javascriptlet arr = [2025, 12, 31];
let year;
let month;
let day;

[year, month, day] = arr;

Սակայն, կան նրբություններ։ Նայեք հետևյալ կոդին։

javascriptlet arr = [2025, 12, 31];
let year;

let [year, month, day] = arr;

Ինչպես տեսնում եք, year փոփոխականը նախապես հայտարարված էր, բայց month և day փոփոխականները՝ ոչ։ Ուստի կոդի հեղինակը որոշել է գրել let դեստրուկտուրացնող վերագրումից առաջ։

Սա, սակայն, կհանգեցնի սխալի, քանի որ անհնար է նույն փոփոխականը երկու անգամ հայտարարել let-ով (կստացվի, որ year-ը հայտարարված է երկու անգամ)։