0
0

Добрый день всем. Не могу понять почему функция не работает, в операторе IF использую || (OR), но все выводит как TRUE. Результат 6 вместо 4.

function count(arr){
let result = 0;
for (let i=0; i<arr.length; i++){
if (arr[i]===1||2){
result++
}
}
return result
}


console.log(count([1, 1, 2, 2, 3, 3]))


Irakli Gelenava
2 years ago






Приветствую мой дорогой друг JS-разработчик
В связи с тем, что вы задаёте условие одновременно к одному и тому же числу тоесть к примеру, если arr[i] == 1 || 2 то такое условие невозможно ведь как может 1 == 2. Математически это невозможно. Поэтому нужно сделать двойную проверку. Вот правильный код вашей задачи:

function count(arr){
    let result = 0;
    for(let i = 0; i < arr.length; i++){
        if(arr[i] == 1 || arr[i] == 2){
            result++;
        }
        
    }
    return result;
}

console.log(count([1,1,2,2,3,3]));

Результат: 4 проверьте

Максим Кузьмин
2 years ago

Один ответ