Я изучаю JavaScript и AngularJS.
Какая разница между этим кодом?
function isInArrayNgForeach(field, arr) {
angular.forEach(arr, function(value, key) {
if(field == value)
return true;
});
return false;
} // This returns always false
function isInArrayJavaScript(field, arr) {
for(var i = 0; i < arr.length; i++) {
if(field == arr[i])
return true;
}
return false;
} // This works fine
function isInArray() {
var testArr = ['stack', 'over', 'flow'];
console.log(isInArrayNgForeach('stack', testArr)); // return false
console.log(isInArrayJavaScript('stack', testArr)); // return true
}
Мой вопрос: почему isInArrayNgForeach всегда возвращает false? Я предполагаю, что, поскольку внутри функции есть функция, но я не уверен, почему.