ფლაგები JavaScript-ის ფუნქციებში
ფუნქციებში შესაძლებელია ფლაგების გამოყენება
არაპირდაპირი სახით return ინსტრუქციის
დახმარებით. ვნახოთ, როგორ კეთდება ეს.
დავუშვათ, გვაქვს შემდეგი ფუნქცია, რომელიც
ამოწმებს, რომ მასივის ყველა ელემენტი დადებითი
რიცხვია:
function isPositive(arr) {
let flag = true;
for (let elem of arr) {
if (elem < 0) {
flag = false;
}
}
return flag;
}
ახლა გადავწეროთ ფუნქციის კოდი ფლაგების არაპირდაპირი გამოყენებით:
function isPositive(arr) {
for (let elem of arr) {
if (elem < 0) {
return false;
}
}
return true;
}
როგორ მუშაობს: თუ მასივში მოიძებნება
საჭირო ელემენტი - ჩვენ გამოვიდეთ ფუნქციიდან
(და აგრეთვე ციკლიდან) return-ის
დახმარებით.
მაგრამ თუ მასივში არ მოიძებნება საჭირო ელემენტი
- ფუნქციიდან გამოსვლა არ მოხდება და შესრულება
მიაღწევს return true ბრძანებამდე. და
აღმოჩნდება, რომ ფუნქცია დააბრუნებს true-ს
იმის ნიშნად, რომ მასივში ყველა ელემენტი
დადებითია.
შექმენით ფუნქცია, რომელიც პარამეტრად მიიღებს რიცხვების მასივს და შეამოწმებს, რომ ამ მასივის ყველა ელემენტი არის ლუწი რიცხვები.
შექმენით ფუნქცია, რომელიც პარამეტრად მიიღებს რიცხვს და შეამოწმებს, რომ ამ რიცხვის ყველა ციფრი არის კენტი.
შექმენით ფუნქცია, რომელიც პარამეტრად მიიღებს მასივს და შეამოწმებს, არის თუ არა ამ მასივში ზედიზედ ორი ერთი და იგივე ელემენტი.