روال های map و filter در جاوا اسکریپت چنانچه اندکی با لهجه جاوا اسکریپت شغل کرده باشید، حتما با مضمون آرایه ها آشنا میباشید. در حالتیکه شناخت با این مفاهیم ندارید، میتوانید از زمان یادگرفتن مجانی جاوا اسکریپت سبزلرن به کارگیری نمایید. هنگامی که در پروژه ای چند مقدار و داده ها داریم، برای ذخیره سازی آنها از آرایه به کارگیری میکنیم. طراحی سایت در مشهد امروزه با آپ تو دیت هایی که جاوا اسکریپت داشته میباشد، روال های بسیار متعددی برای آرایه ها در جاوا اسکریپت وجود داراست که دو آیتم از پرکاربرد ترین آنها map و filter میباشند.
دراین نوشتهی علمی به پژوهش سیاق های map و filter در جاوا اسکریپت خوا هیم پرداخت.
همانندی های دربین map و filter
هرمورد از سیاق های map و filter در وضعیت معمولی یک فانکشن تحت عنوان ورودی از ما اخذ کرده و آن را به ازای تعداد مورد های آرایه تکرار می نمایند. پس در بی آلایش ترین شرایط یک رینگ (loop) به اکانت بین.
به کد های تحت دقت نمائید:
let scores = [12, 90, 14, 72, 89, 51]
scores.map(function () {
console.log(\'SabzLearn\')
})
scores.filter(function () {
console.log(\'SabzLearn\')
})
در هر دو تکه کد های بالا، مقدار SabzLearn به تعداد 6 توشه (length ارایه scores) در console نشان داده میشود.
پس هر دوی آنها در وضعیت معمولی یک فانکشن را به ازای تعداد گزینه های آرایه گزینه نظرمان تکرار می نمایند، البته کاربرد به طور کامل متفاوتی داراهستند.
مشابهت آجل آنان در ورودی هایشان میباشد. همانطور که متوجه شدید، اسلوب های map و filter یک فانکشن را تحت عنوان ورودی اخذ کرده و آن را به ازای تعداد مورد های باطن آرایه تکرار می نماید.
یعنی در نمونه بالا، کد console.log یک توشه به ازای 12، یک توشه به ازای 90، یک توشه به ازای 14 و … در غایت یک توشه هم به ازای 51 جاری ساختن میگردد.
هم اکنون ممکن میباشد در هر وهله تکرار، قصد داشته باشیم به خویش مقدار آن گزینه از آرایه (یعنی 12، 90 و …) نیز درون فانکشن دسترسی داشته باشیم.
دراینصورت یک ورودی با نام دلخواه به فانکشن ارسال میکنیم و در هر توشه تکرار کد های باطن فانکشن، درون به عبارتی ورودی به مقدار مورد فعلی آرایه دسترسی داریم.
یعنی وهله نخستین که تابع اعمال میشود، مقدار 12 از آرایه scores به تابع پاس داده می گردد، در اجرای آینده مقدار 90 و … تاوقتیکه به آخرین حد از آرایه برسیم. (در صورتیکه قسمتی از توضیحات برای شما غیر قابل درک بود، لطفا به ویدئوی همین نوشتهی علمی مراجعه نمایید)
مثلا:
let scores = [12, 90, 14, 72, 89, 51]
scores.map(function (score) {
console.log(score) // 12 90 14 72 89 51
})
scores.filter(function (score) {
console.log(score) // // 12 90 14 72 89 51
})
همان گونه که مشاهده میکنید، یک ورودی به نام score به فانکشن ورودی map و filter ارسال کرده ایم. در وهله نخستین که فانکشن جاری ساختن میشود، مورد اولیه از آرایه scores (مقدار 12) در ورودی score قرار گرفته و درون فانکشن گزینه به کارگیری قرار میگیرد. در نوبت دوم اجرای فانکشن، گزینه آتی آرایه scores (مقدار 90) به آن ارسال میگردد و باطن فانکشن همین ورودی (مقدار 90) log گرفته میگردد.
پس ما خواهیم توانست در هر نوبت اجرای فانکشن ورودی مشی های map و filter، قادر خواهیم بود به مجموع گزینه های آرایه متبوع دسترسی داشته باشیم.
کاربرد مشی map در جاوا اسکریپت
مسلما ممکن میباشد در یک کدام از پروژه هایی که اجرا می دهید آرایه ای را داشته باشید و بخواهید که یک فعالیت یکسانی را با آحاد گزینه های باطن آرایه ایفا دهید. خواسته موقعی میباشد که بخواهید یک بلایی را راز مجموع مورد های آرایه بیاورید.
با تصویر تحت می قدرت کاربرد مشی map در جاوا اسکریپت را خوب فهم و شعور کرد:
فرض فرمائید میوه های سمت چپ به عبارتی مورد های آرایه می باشند و ما قصد داریم آحاد مورد های آرایه را قاچ کنیم. یعنی فعالیت قاج کردن را برای کل ایتم های آرایه جاری ساختن بدیم (تکرار کنیم).
مثلا یک آرایه ای به نام scores (امتیازها) دارید که 5 عدد داخلش ذخیره گردیده و شما میخواهید مجموع امتیاز ها را در عدد 2 ضرب فرمائید. در همچین حالتی از مشی map در جاوا اسکریپت به کار گیری میکنیم.
دقیقا مثل تکه کد ذیل:
scores.map(function (score) {
return score * 2
})
به همین راحتی خواهیم توانست تمام گزینه های آرایه scores را در عدد 2 ضرب کنیم. البته همانگونه که از کد بالا معلوم میباشد، باطن فانکشن دیتایی return می گردد ولی فیض آن را در هیچ متغیری ذخیره نکردیم! یعنی فیض و خروجی سیاق map رو هواست!
برای همین می بایست خروجی سیاق map را باطن متغیری در اختیار بگذاریم.
روال های map و filter در جاوا اسکریپت چنانچه اندکی با لهجه جاوا اسکریپت شغل کرده باشید، حتما با مضمون آرایه ها آشنا میباشید. در حالتیکه شناخت با این مفاهیم ندارید، میتوانید از زمان یادگرفتن مجانی جاوا اسکریپت سبزلرن به کارگیری نمایید. هنگامی که در پروژه ای چند مقدار و داده ها داریم، برای ذخیره سازی آنها از آرایه به کارگیری میکنیم. طراحی سایت در مشهد امروزه با آپ تو دیت هایی که جاوا اسکریپت داشته میباشد، روال های بسیار متعددی برای آرایه ها در جاوا اسکریپت وجود داراست که دو آیتم از پرکاربرد ترین آنها map و filter میباشند.
دراین نوشتهی علمی به پژوهش سیاق های map و filter در جاوا اسکریپت خوا هیم پرداخت.
همانندی های دربین map و filter
هرمورد از سیاق های map و filter در وضعیت معمولی یک فانکشن تحت عنوان ورودی از ما اخذ کرده و آن را به ازای تعداد مورد های آرایه تکرار می نمایند. پس در بی آلایش ترین شرایط یک رینگ (loop) به اکانت بین.
به کد های تحت دقت نمائید:
let scores = [12, 90, 14, 72, 89, 51]
scores.map(function () {
console.log(\'SabzLearn\')
})
scores.filter(function () {
console.log(\'SabzLearn\')
})
در هر دو تکه کد های بالا، مقدار SabzLearn به تعداد 6 توشه (length ارایه scores) در console نشان داده میشود.
پس هر دوی آنها در وضعیت معمولی یک فانکشن را به ازای تعداد گزینه های آرایه گزینه نظرمان تکرار می نمایند، البته کاربرد به طور کامل متفاوتی داراهستند.
مشابهت آجل آنان در ورودی هایشان میباشد. همانطور که متوجه شدید، اسلوب های map و filter یک فانکشن را تحت عنوان ورودی اخذ کرده و آن را به ازای تعداد مورد های باطن آرایه تکرار می نماید.
یعنی در نمونه بالا، کد console.log یک توشه به ازای 12، یک توشه به ازای 90، یک توشه به ازای 14 و … در غایت یک توشه هم به ازای 51 جاری ساختن میگردد.
هم اکنون ممکن میباشد در هر وهله تکرار، قصد داشته باشیم به خویش مقدار آن گزینه از آرایه (یعنی 12، 90 و …) نیز درون فانکشن دسترسی داشته باشیم.
دراینصورت یک ورودی با نام دلخواه به فانکشن ارسال میکنیم و در هر توشه تکرار کد های باطن فانکشن، درون به عبارتی ورودی به مقدار مورد فعلی آرایه دسترسی داریم.
یعنی وهله نخستین که تابع اعمال میشود، مقدار 12 از آرایه scores به تابع پاس داده می گردد، در اجرای آینده مقدار 90 و … تاوقتیکه به آخرین حد از آرایه برسیم. (در صورتیکه قسمتی از توضیحات برای شما غیر قابل درک بود، لطفا به ویدئوی همین نوشتهی علمی مراجعه نمایید)
مثلا:
let scores = [12, 90, 14, 72, 89, 51]
scores.map(function (score) {
console.log(score) // 12 90 14 72 89 51
})
scores.filter(function (score) {
console.log(score) // // 12 90 14 72 89 51
})
همان گونه که مشاهده میکنید، یک ورودی به نام score به فانکشن ورودی map و filter ارسال کرده ایم. در وهله نخستین که فانکشن جاری ساختن میشود، مورد اولیه از آرایه scores (مقدار 12) در ورودی score قرار گرفته و درون فانکشن گزینه به کارگیری قرار میگیرد. در نوبت دوم اجرای فانکشن، گزینه آتی آرایه scores (مقدار 90) به آن ارسال میگردد و باطن فانکشن همین ورودی (مقدار 90) log گرفته میگردد.
پس ما خواهیم توانست در هر نوبت اجرای فانکشن ورودی مشی های map و filter، قادر خواهیم بود به مجموع گزینه های آرایه متبوع دسترسی داشته باشیم.
کاربرد مشی map در جاوا اسکریپت
مسلما ممکن میباشد در یک کدام از پروژه هایی که اجرا می دهید آرایه ای را داشته باشید و بخواهید که یک فعالیت یکسانی را با آحاد گزینه های باطن آرایه ایفا دهید. خواسته موقعی میباشد که بخواهید یک بلایی را راز مجموع مورد های آرایه بیاورید.
با تصویر تحت می قدرت کاربرد مشی map در جاوا اسکریپت را خوب فهم و شعور کرد:
فرض فرمائید میوه های سمت چپ به عبارتی مورد های آرایه می باشند و ما قصد داریم آحاد مورد های آرایه را قاچ کنیم. یعنی فعالیت قاج کردن را برای کل ایتم های آرایه جاری ساختن بدیم (تکرار کنیم).
مثلا یک آرایه ای به نام scores (امتیازها) دارید که 5 عدد داخلش ذخیره گردیده و شما میخواهید مجموع امتیاز ها را در عدد 2 ضرب فرمائید. در همچین حالتی از مشی map در جاوا اسکریپت به کار گیری میکنیم.
دقیقا مثل تکه کد ذیل:
scores.map(function (score) {
return score * 2
})
به همین راحتی خواهیم توانست تمام گزینه های آرایه scores را در عدد 2 ضرب کنیم. البته همانگونه که از کد بالا معلوم میباشد، باطن فانکشن دیتایی return می گردد ولی فیض آن را در هیچ متغیری ذخیره نکردیم! یعنی فیض و خروجی سیاق map رو هواست!
برای همین می بایست خروجی سیاق map را باطن متغیری در اختیار بگذاریم.