در یادگیری زبان های برنامه نویسی، یکی از مهم ترین مباحث فوق العاده کاربردی، حلقه ها هستند. Loopها یا حلقه ها به ما این امکان را می دهد که یک (یا چند) خط کد را بارها و بارها تکرار کنیم.
این ویژگی به برنامه نویسان کمک می کند تا با یک بار نوشتن، چندین بار از یک کد اجرا بگیرند. این نه تنها در وقت صرفه جویی می کند بلکه کدهای بسیار طولانی را نیز به کدهای بسیار کوتاه تبدیل می کند. به طور کلی چندین حلقه در زبان برنامه نویسی جاوا اسکریپت از جمله حلقه های for و while وجود. در ادامه این مقاله با ما همراه باشید تا با این حلقه ها در جاوا اسکریپت آشنا شویم.
آنچه که در این مقاله خواهید خواند:
تکرارها و حلقه ها
اگر سابقه برنامه نویسی در هر زبانی را داشته باشید، حتما کلمه حلقه به گوشتان خورده است. در واقع حلقه ها جزء مهمی از هر زبان برنامه نویسی، از ساده ترین تا پیچیده ترین آن ها هستند. Loopها یک راه سریع و آسان برای انجام مکرر یک کد یا دستور را ارائه می دهند. ما در این مقاله قصد داریم تا این حلقه ها و تکرارها یا همان iteration ها را به شما معرفی کنیم.
می توانید یک حلقه را به عنوان یک نسخه کامپیوتری از یک بازی در نظر بگیرید که در آن به کسی می گویید X قدم را در یک جهت بردارد، سپس Y قدم در جهت مخالف قدم بگذارد. به عنوان مثال، ایده “پنج قدم به سمت شرق برو” می تواند به عنوان یک حلقه بیان شود:
انواع حلقه ها
انواع مختلفی از حلقه ها وجود دارد، اما همه آن ها اساساً یک کار را انجام می دهند: آن ها یک عمل را چندین بار تکرار می کنند. (توجه داشته باشید که ممکن است این تعداد بار صفر باشد!)
برای کسب اطلاعات در رابطه با مزایای استفاده از جاوا اسکریپت در اندروید مقاله آن را از دست ندهید!
مکانیسم های مختلف حلقه راه های مختلفی را برای تعیین نقطه شروع و پایان حلقه ارائه می دهند. موقعیت های مختلفی وجود دارد که یک کد توسط یک نوع حلقه نسبت به بقیه حلقه ها راحت تر ارائه و اجرا می شود.
حلقه های ارائه شده در جاوا اسکریپت عبارتند از:
- for statement
- do…while statement
- while statement
- labeled statement
- break statement
- continue statement
- for…in statement
- for…of statement
حلقه for
یک حلقه for تا زمانی تکرار می شود که یک شرط مشخص، نادرست ارزیابی شود. حلقه for جاوا اسکریپت شبیه حلقه for جاوا و زبان C است.
یک کد عادی شامل حلقه for به این شکل است:
هنگامی که یک حلقه for اجرا می شود، موارد زیر رخ می دهد:
1) عبارت مقداردهی اولیه initialExpression، در صورت وجود، اجرا می شود
این عبارت معمولاً یک یا چند شمارنده حلقه را مقداردهی اولیه می کند، اما سینتکس اجازه بیان هر درجه ای از پیچیدگی را می دهد. این عبارت می تواند متغیرها را نیز اعلام کند.
2) عبارت conditionExpression ارزیابی می شود
اگر مقدار conditionExpression درست باشد، دستورات حلقه اجرا می شوند. در غیر این صورت، حلقه for خاتمه می یابد. (اگر عبارت conditionExpression به طور کامل حذف شود، شرط صحیح فرض می شود.)
3) statement اجرا می شود
برای اجرای چند دستور، از یک block statement ({ }) برای گروه بندی آن عبارات استفاده کنید.
4) در صورت وجود، عبارت به روز رسانی incrementExpression اجرا می شود
این به روزرسانی را می توان جز موارد مهم به شمار آورد.
5) کنترل به مرحله 2 برمی گردد
مثال حلقه for در جاوا اسکریپت
در اینجا، دستور for متغیر i را اعلام میکند و آن را به 0 مقداردهی اولیه میکند. بررسی میکند که i کمتر از تعداد گزینههای عنصر <select> باشد، دستور if بعدی را اجرا میکند و بعد از هر عبور از حلقه i را یک واحد افزایش میدهد.
حلقه do…while
دستور do…while تا زمانی که یک شرط مشخص به نادرست ارزیابی شود تکرار می شود.
یک دستور do…while به صورت زیر است:
statement همیشه قبل از بررسی شرط یک بار اجرا می شود. (برای اجرای چند دستور، از یک دستور بلوک ({ }) برای گروه بندی آن عبارات استفاده کنید.)
اگر شرط درست باشد، دستور دوباره اجرا می شود. در پایان هر اجرا، شرط بررسی می شود. هنگامی که شرط نادرست است، اجرا متوقف می شود و کنترل به دستور زیر حلقه انجام می شود.
مثال حلقه do…while
در مثال زیر، حلقه do حداقل یک بار تکرار می شود و تا زمانی که i دیگر کمتر از 5 نباشد تکرار می شود.
حلقه while
دستور while تا زمانی که یک شرط مشخص به درستی ارزیابی شود، دستورات خود را اجرا می کند.
یک دستور حلقه while به صورت زیر است:
اگر شرط نادرست شود، دستور داخل حلقه اجرا را متوقف میکند و کنترل به دستور بعد از حلقه منتقل میشود.
تست شرط قبل از اجرای دستور در حلقه انجام می شود. اگر شرط true باشد، دستور اجرا شده و شرط دوباره تست می شود. اگر شرط false یا غلط باشد، اجرا متوقف میشود و کنترل به دستور زیر حلقه while منتقل می شود.
برای اجرای چند دستور، از یک دستور بلوک ({ }) برای گروه بندی آن عبارات استفاده کنید.
مثال حلقه while
حلقه while زیر تا زمانی که n کمتر از 3 باشد تکرار می شود:
با هر تکرار، حلقه، n را افزایش می دهد و آن مقدار را به x اضافه می کند. بنابراین، x و n مقادیر زیر را می گیرند:
پس از اولین پاس: n = 1 و x = 1
پس از عبور دوم: n = 2 و x = 3
بعد از پاس سوم: n = 3 و x = 6
پس از تکمیل پاس سوم، شرط n < 3 دیگر درست نیست، بنابراین حلقه خاتمه می یابد.
Labeled statement
یک label یک عبارت با یک شناسه ارائه می دهد که به شما امکان می دهد به آن در جای دیگری از برنامه خود مراجعه کنید. به عنوان مثال، می توانید از یک برچسب برای شناسایی یک حلقه استفاده کنید و سپس از دستورات break یا continue استفاده کنید تا مشخص کنید که آیا برنامه باید حلقه را قطع کند یا اجرای آن را ادامه دهد.
آیا می دانستید از زبان جاوا اسکریپت در حوزه هک و امنیت نیز استفاده می شود؟ برای کسب اطلاعات بیشتر مقاله کاربرد جاوا اسکریپت در هک را از دست ندهید!
سینکس labeled statement به صورت زیر است:
مقدار برچسب ممکن است هر شناسه جاوا اسکریپتی باشد که یک کلمه رزرو شده نیست. عبارتی که شما با یک برچسب شناسایی می کنید ممکن است هر عبارتی باشد. برای مثال:
Break Statement
از دستور break برای خاتمه دادن به یک حلقه، سوئیچ یا در ارتباط با یک دستور برچسب دار استفاده کنید.
هنگامی که از break بدون برچسب استفاده می کنید، درونی ترین محفظه while، do-while، برای یا سوئیچ بلافاصله خاتمه می یابد و کنترل را به عبارت زیر منتقل می کند.
وقتی از break با یک برچسب استفاده می کنید، دستور برچسب مشخص شده را خاتمه می دهد.
سینتکس دستور break به صورت زیر است:
شکل اول سینتکس، درونی ترین حلقه یا سوئیچ را خاتمه می دهد.
شکل دوم سینتکس، عبارت مشخص شده با برچسب را خاتمه می دهد.
Continue Statement
دستور continue را می توان برای راه اندازی مجدد دستورات while، do-while، for یا label استفاده کرد.
- هنگامی که از continue بدون برچسب استفاده می کنید، درونی ترین while، do-while، یا for را تکرار می کند و اجرای حلقه را با تکرار بعدی ادامه می دهد. برخلاف دستور break، continue اجرای حلقه را به طور کامل خاتمه نمی دهد. در یک حلقه while، به حالت اولیه بازمیگردد و در یک حلقه for، سراغ increment-expression می رود.
- هنگامی که از continue با یک برچسب استفاده می کنید، این عبارت برای عبارت حلقه ای که با آن برچسب مشخص شده است اعمال می شود.
سینتکس عبارت continue به صورت زیر است:
For… in Statement
عبارت for…in یک متغیر مشخص شده را روی تمام prpertiseهای قابل شمارش یک شی تکرار می کند و برای هر یک، جاوا اسکریپت عبارات مشخص شده را اجرا می کند. دستور for…in به صورت زیر است:
For… of Statement
دستور for…of یک حلقه تکرار بر روی اشیاء قابل تکرار (از جمله آرایه، نقشه، مجموعه، شیء آرگومانها و غیره) ایجاد میکند، و یک تکرار سفارشی را با عباراتی که باید برای مقدار هر ویژگی مجزا اجرا شوند، فراخوانی میکند.
سخن پایانی
به طور کلی حلقه از مفاهیم اصلی و پرکاربرد هر زبان برنامه نویسی هستند و باید نحوه درست کار با آن ها و شرایط مناسب استفاده از هر یک را به خوبی دانست. برای برنامه نویسی حرفه ای در جاوا اسکریپت و کسب درآمد در این زمینه، آموزش و یادگیری درست، حرف اول را می زند. برای یادگیری جاوا اسکریپت از مسیر کارآموزی فرانت اند می توانید اقدام کنید.
پاسخها