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

آموزش find در جاوااسکریپت؛ یافتن اولین محصول

پردازش آرایه در جاوااسکریپت با map و filter و find · 0٪

✍️ گاهی همه عضوهای مطابق را نمی‌خوایم؛ فقط اولین نتیجه کافی است. متد find از ابتدا جلو می‌ره، شرط را روی عضوها بررسی می‌کنه و با اولین پاسخ درست، خود آن عضو را برمی‌گردونه. اگر هیچ عضوی پیدا نشه، نتیجه undefined است. این تفاوت با filter مهمه، چون filter همیشه آرایه برمی‌گردونه.

مثلاً برای پیدا کردن اولین کتاب با کد مشخص، نتیجه find یک شیء کتاب است و می‌شه ویژگی عنوانش را خواند. ولی اگر کتابی وجود نداشته باشه، باید قبل از استفاده از ویژگی‌ها، نبودن نتیجه را مدیریت کنیم. در این تمرین برای داشتن خروجی روشن و قابل تبدیل به JSON، نبودن محصول را با null نشان می‌دیم.

کد محصول رشته است؛ مقایسه دقیق با === انجام بده. اگر چند محصول کد برابر دارند، اولین آن‌ها معتبره و نباید تا آخر حلقه جایگزین بشه. خطای رایج، برگرداندن آرایه تک‌عضوی یا استفاده از filter به‌جای نتیجه مستقیم است. آرایه خالی هم فقط حالت دیگری از «پیدا نشد» حساب می‌شه.

فعالیت شما

findProduct(products, code) را کامل کن. products آرایه اشیای دارای code و name رشته‌ای است و code ورودی رشته است. اولین شیء با code دقیقاً برابر را برگردان؛ نبودن نتیجه یا آرایه خالی => null. مثال [{code:'a',name:'دفتر'}] و 'a' => همان شیء.

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

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

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

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

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

کد اولیهٔ فعالیت

function findProduct(products, code) {
  // TODO: اولین نتیجه یا null را برگردان.
}