تابستون داره تموم میشه ها، فرصت‌ها محدودن کلی آفر جذاب در کمپین تابستون🔥👇
۰ ثانیه
۰ دقیقه
۰ ساعت
۱ علیرضا بابایی
درخواست توضیح یک بخش کد
جامعه ری اکت ایجاد شده در ۱۹ شهریور ۱۴۰۰

استاد ممنون میشم این قسمت رو یه توضیح دوباره بدین لطفا

 

    return todos.filter(todo => {
        const statusFilter = showAll || todo.completed === showCompleted
        const colorsFilter = colors.length === 0 || colors.includes(todo.color)
        return statusFilter && colorsFilter
    })

 اگر کد رو تغییر بدم فکر کنم یکی شفاف‌تر بشه:

return todos.filter(todo => {
        const statusFilter = showAll || todo.completed === showCompleted
        if(!statusFilter) return false
        const colorsFilter = colors.length === 0 || colors.includes(todo.color)
        if(!colorsFilter) return false
        return true
    })

این کد معادل همون کد قبلی محسوب میشه!

قصد داریم از تعدادی todos تعدادی از اونها رو بر اساس رنگ و  status فیلتر بکنیم برای نمایش

از تابع filter استفاده شده و برای اینکه یک todo در نهایت باقی بماند برای نمایش باید true برگشت داده بشه

نکته ای که وجود داره باید  رنگ و  status  هر دو همزمان صدق بکنن و اگر یکی از اونها درست نباشه نباید todo رو نمایش بدیم.

در کدی که فرستادید با && چک کردیم که هر دو تای اونها برابر true باشه و اگر یکی از اونها false باشه خروجی نهایی هم false میشه.

 

اگر ابهامی داری بگو اون بخشش رو بیشتر توضیح بدم

مجتبی سوری ۲۱ شهریور ۱۴۰۰، ۱۴:۱۶