حالت آفلاین — محتوا از حافظهٔ کش نمایش داده می‌شود
آموزش جاوااسکریپت تکمیلی؛ توابع و پردازش داده

پیش‌بینی destructuring شیء در جاوااسکریپت؛ پیش‌فرض و صفر

destructuring و spread و rest در جاوااسکریپت · 0٪

✍️ در destructuring شیء، نام ویژگی تعیین می‌کنه کدام مقدار خوانده بشه؛ ترتیب نوشتن نام‌ها مهم نیست. می‌تونیم برای ویژگی غایب، مقدار پیش‌فرض بذاریم یا نام محلی متفاوت انتخاب کنیم. این روش در تابع‌هایی که تنظیمات می‌گیرند، تکرار خواندن ویژگی‌ها را کم می‌کنه و ورودی مورد نیاز را روشن‌تر نشان می‌ده.

مثلاً const {title = 'بدون عنوان'} = {} عنوان پیش‌فرض می‌ده. اما اگر title برابر رشته خالی یا null باشه، همان مقدار باقی می‌مونه. پیش‌فرض destructuring فقط برای undefined است، نه هر مقداری که در شرط نادرست حساب می‌شه. همین قانون درباره صفر هم برقرار است.

در کد پایین، stock واقعاً وجود دارد و مقدارش صفر است. در مقابل، unit اصلاً وجود ندارد. قبل از انتخاب پاسخ، این دو حالت را از هم جدا کن. خطای رایج اینه که صفر را نبودن داده بدانیم و به صورت خودکار مقدار پیش‌فرض را جایگزین کنیم. موجودی صفر یعنی کالا تمام شده؛ این اطلاعات نباید با یک پیش‌فرض مثبت پاک بشه.

const product = { stock: 0 };
const { stock = 10, unit = 'عدد' } = product;
console.log(stock, unit);

فعالیت شما

مقدار stock و unit را بعد از destructuring انتخاب کن.

مطالعهٔ این گام برای همه آزاد است

برای پاسخ‌دادن، بررسی پاسخ، ثبت پیشرفت و استفاده از دستیار باید شرایط شرکت در فعالیت‌ها را داشته باشید.

برای انجام فعالیت وارد شوید

فعالیت‌های این بخش به اشتراک فعال نیاز دارند. تهیهٔ اشتراک

برای انجام فعالیت‌ها ابتدا این دوره‌های پیش‌نیاز را تکمیل کنید:

گزینه‌های پیش‌بینی خروجی

  1. 10 و عدد
  2. 0 و عدد
  3. 0 و undefined