Найти значение в массиве, а затем вернуть true с Angular forEach

Я изучаю 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 всегда возвращайсяложный? Я предполагаю это, потому что внутри функции есть функция, но я не уверен почему.

Ответы на вопрос(4)

Ваш ответ на вопрос