JavaScriptтеги for циклиндеги ачкыч жана элементтин чаташуусу
Айлардын аталышы бар массив берилсин:
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>');
}