Если найдено three
, оно должно возвратить true и остановить итерацию. В противном случае возвратите return false, если не найдено.Как остановить цикл после его обнаружения?
Я использую filter()
- это неправильный подход к использованию?
var data = [
'one',
'two',
'three',
'four',
'three',
'five',
];
found = data.filter(function(x) {
console.log(x);
return x == "three";
});
console.log(found);
Демо: https://jsbin.com/dimolimayi/edit?js,console
'фильтр()' метод Запускает функцию ** давать по каждому пункту ** в массиве и возвращает массив всех элементов, для которых функция возвращает значение ИСТИНА; Полезная ссылка: https://coderwall.com/p/_ggh2w/the-array-native-every-filter-map-some-foreach-methods –
Ничего плохого в использовании 'filter', но вы можете использовать ['. find() '] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/find), чтобы удовлетворить ваши требования ... Related: http://stackoverflow.com/questions/23614054/javascript-нюансы-of-myarray-foreach-vs-for-loop – Mottie