mrReza
2 سال پیش توسط mrReza مطرح شد
5 پاسخ

نحوه شکستن حلقه forEach در جاوا اسکریپت به چه شکله

سلام وقتتون بخیر

چطور میتونیم حلقه forEach رو بشکنیم و ازش خارج بشیم.
من از break استفاده میکنم اما با ارور زیر مواجه میشم.
Illegal break statement


ثبت پرسش جدید
محمدحسن یگانه
تخصص : Full-Stack Web Developer Freel...
@mhyeganeh 2 سال پیش مطرح شد
3

همون‌طوری که اشاره شد راه مشخصی برای این قضیه وجود نداره. اما با کمی Refactor کردن کد میشه به هدفمون خیلی راحت برسیم. در لینک زیر چندتا راهکار جایگزین برای این قضیه همراه با مثال توضیح داده شده:

https://techozu.com/exit-foreach-loop-javascript/


حسام موسوی
تخصص : طراح و برنامه نویس
@hesammousavi 2 سال پیش مطرح شد
2

سلام ببین شما نمیتونی forEach رو بشکنی تا آخرش میره
کاری که میتونی انجام بدی بجاز مثلا میتونی از متد every استفاده کنی و اگر return نکنی چیزی رو بسته میشه اتوماتیک یا اگر از forEach میخوای استفاده کنی یه شرط بزاری اگر شرط درست شد دیگه فقط return کنه اولین خطش تا ادامه کد اجرا نشه


محمدحسن یگانه
تخصص : Full-Stack Web Developer Freel...
@mhyeganeh 2 سال پیش مطرح شد
3

همون‌طوری که اشاره شد راه مشخصی برای این قضیه وجود نداره. اما با کمی Refactor کردن کد میشه به هدفمون خیلی راحت برسیم. در لینک زیر چندتا راهکار جایگزین برای این قضیه همراه با مثال توضیح داده شده:

https://techozu.com/exit-foreach-loop-javascript/


محمد زورمند
تخصص : react developer
@SpyStar0003 2 سال پیش مطرح شد
0

سلام

شما یه شرطی داری که میگی وقتی رسیدی به این شرط دیگه حلقه رو ادامه نده !
میای میخای اینو بزاری از break استفاده میکنی !

ولی break برا forEach جواب نمیده !
پس بیا شرطت رو بزار تو یه if و داخلش یه return الکی بزار!


mrReza
تخصص : طراح سایت
@rezasaz 2 سال پیش مطرح شد
0

ممنون از همتون بابت راهنمایی 🙏


mrReza
تخصص : طراح سایت
@rezasaz 2 سال پیش مطرح شد
1

البته اینجوری هم جواب داد با حلقه for و بدون استفاده از break

const searchProduct = function(array,textSearch){
    for(let item of myArray){
        if(item.name.includes(textSearch)){
            return `${item.name} : ${item.price} `
        }
    }
}

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام