Почему продолжать останавливать итерацию? - PullRequest
1 голос
/ 24 июня 2019

Я не знаю, почему итерация останавливается, когда я размещаю continue.Если я заменю continue на console.log(), все будет работать нормально.Я пытаюсь вернуть true, если все элементы одинаковы, и false в противном случае.

function isUniform(de) {
   for(var i=0;i<de.length;i++) {
       if (de.indexOf(de[i])===0) {
            continue;
        }
        else {
            return false
        }
    }
    return true;
}

arr =[1,1,1];
isUniform(arr);

1 Ответ

2 голосов
/ 24 июня 2019

Как уже упоминалось в комментариях, ваш предикат имеет опечатку:

de.indexOf(de[i]) === 0

Кроме того, это может быть проще реализовать как:

let isUniform = arr => arr.every(a => a === arr[0])

console.log(isUniform([1, 1, 1, 1, 1]));
console.log(isUniform([1, 3, 1, 1, 1]));

В английском это проверяет, равен ли каждый элемент arr arr[0].

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...