გასაღებისა და ელემენტის აღრევა for ციკლში JavaScript-ში
მოდით, მოცემული გვაქვს თვეების სახელების მასივი:
let arr = [
'იან', 'თებ', 'მარ', 'აპრ', 'მაი', 'ივნ',
'ივლ', 'აგვ', 'სექ', 'ოქტ', 'ნოე', 'დეკ'
];
მოდით, ცვლადში month ინახება
მიმდინარე თვის ნომერი:
let month = 10;
მოდით, ციკლის საშუალებით გამოვიტანოთ ყველა თვე, ამასთანავე, მიმდინარე თვე გამოვიტანოთ კურსივით.
რაღაც პროგრამისტმა უკვე გადაჭრა ეს ამოცანა,
თუმცა, მან შეცდომა დაუშვა და ყურადღება არ მიაქცია
იმას, რომ ცვლადში month
ინახება თვის ნომერი, და არა მისი სახელი:
for (let i = 0; i < arr.length; i++) {
if (month === arr[i]) { // შეცდომა აქ
document.write('<i>' + arr[i] + '</i>');
}
else {
document.write(arr[i]);
}
document.write('<br>');
}
ჩვენი პროგრამისტი ადარებს მასივის ელემენტს
ცვლადთან month. მაგრამ ბოლოს და ბოლოს, ამ
ცვლადში ინახება თვის ნომერი,
და არა მისი სახელი!
იმისთვის, რომ კოდმა სწორად იმუშაოს,
საჭიროა შევადაროთ month
თვის ნომერს, ანუ
თვლის ინდექსის i მნიშვნელობას:
for (let i = 0; i < arr.length; i++){
if (month === i) { // შევასწორეთ შეცდომა
document.write('<i>' + arr[i] + '</i>');
}
else {
document.write(arr[i]);
}
document.write('<br>');
}