如何使用AngularJS检查值是否在数组中

时间:2015-08-02 19:50:45

标签: javascript angularjs

是否有一种AngularJS方法来检查数组中是否存在值

var array1 = ["a","b","c"]

我试图这样做..

var array2 = ["c", "d", "e"]

angular.forEach(array2, function (a) {
    if (a /*is NOT in array1*/) {
        array1.push(a);
    } else {
        return false
    }
});

3 个答案:

答案 0 :(得分:28)

您可以使用Array.indexOf,如果找不到它,将返回-1或数组中的值的索引。

所以在你的情况下:

if (array2.indexOf(a) < 0) {
  array1.push(a);
}

答案 1 :(得分:10)

您只需使用原生Array.prototype.indexOf来检查值是否在数组中:

var array2 = ["c", "d", "e"]

angular.forEach(array2, function (a) {
    if (array2.indexOf(a) === -1) {
        // a is NOT in array1
        array1.push(a);
    }
});

答案 2 :(得分:0)

https://www.w3schools.com/jsref/jsref_includes_array.asp

var fruits = ["Banana", "Orange", "Apple", "Mango"];
var n = fruits.includes("Mango");