我有json数组,我想检查输入字段的值是否在数组中。

我的数组是employeeData.seat_array
如何用Angular做呢?

<input type='text'id='seat_number' name='seat_number' ng-model="employeeData.new_seat_number">

数组结构:
$scope.$watch('employeeData.new_seat_number', function (newVal) {
    console.log(newVal);

    $.each(employeeData, function (i, obj) {
        if (obj.seat_number === $scope.employeeData.new_seat_number) {
            alert("asd");
        }
    });

});

最佳答案

只需使用Array.prototype.indexOf

var inArray = $scope.employeeData.seat_array.indexOf($scope.employeeData.new_seat_number) > -1;


我不确定employeeData.seat_array的结构,但是如果它是对象数组,则可以使用Array.prototype.some代替indexOf:

var inArray = $scope.employeeData.seat_array.some(function(obj) {
    return obj.seat_number === $scope.employeeData.new_seat_number;
});

10-02 09:06