✍️ destructuring یا بازکردن ساختار، اجازه میده مقدارهای داخل آرایه را مستقیم به نامهای جدا وصل کنیم. ترتیب نامها مهمه: نام اول از خانه صفر میاد، نام دوم از خانه یک و همینطور ادامه پیدا میکنه. این روش وقتی آرایه معنای مشخصی دارد، مثل مختصات یا بازه شروع و پایان، خواناتر از تکرار اندیسهاست.
در مثال، طول و عرض را از یک آرایه دوعضوی میگیریم. میتونیم برای عضو غایب هم مقدار پیشفرض بذاریم. پیشفرض فقط وقتی استفاده میشه که مقدار undefined باشه؛ عدد صفر یک مقدار واقعی است و نباید با پیشفرض جایگزین بشه. این تفاوت را در بخش داده ناقص بیشتر بررسی میکنیم.
خطای رایج، جابهجا خواندن ترتیب آرایه است. نام متغیر تعیین نمیکنه کدام عضو انتخاب بشه؛ جای آن نام داخل الگو تعیینکننده است. اگر فقط عضو دوم لازم باشه، جای اول را خالی میگذاریم. برای دادهای که تعداد و معنی عضوهایش مشخص نیست، قبل از destructuring باید قرارداد ورودی را بشناسیم تا نامهای ظاهراً خوب، برداشت اشتباه نسازند.
const [width, height] = [8, 3];
console.log(width * height); // 24
const [shortWidth, shortHeight = 1] = [5];
console.log(shortWidth * shortHeight); // 5
const [, second] = ['اول', 'دوم'];
console.log(second); // دوم
فعالیت شما
در مثال، نقش ترتیب و مقدار پیشفرض را دنبال کن؛ عرض دوم از نبودن عضو به مقدار 1 میرسد.