Angularjs, сравнивающий элементы из двух массивов

0

У меня есть один массив вроде следующего:

$scope.blinkedBoxes=[3,4,1,2,..]

Он будет содержать до 8 элементов (элементы будут одним из чисел от 1,2,3,4).

Другой массив выглядит следующим образом:

$scope.clickedImages=[2,4,3,1,...]

Я строю следующую функцию:

$scope.checkCrossCorrectness = function(array1, array2){}

Мое требование:

Если первый элемент $scope.blinkingBoxes равен 2 (или в основном любому из 1, 2, 3, 4), то в $scope.clickedImages первый элемент не может быть 2 (или тот же, что и первый элемент первого массива), а может быть 1, 3 или 4. Эта логика продолжается и для других элементов (т.е. В первом массиве во втором положении, если 3 приходит, тогда во втором массиве второе положение может занимать либо 1, 2, либо 4)

Как я могу это реализовать?

  • 0
    Хм, а что должно произойти, если второй массив имеет тот же номер, что и первый массив в том же индексе? Должен ли он вернуть true или false, или он должен изменить массивы, или он должен начать миссию на Марс ... или ... не совсем понятно, для чего предназначена эта функция?
Теги:

1 ответ

1
Лучший ответ

Я действительно не знаю, имеет ли это какое-либо отношение к угловым особенностям, но из того, что я могу сказать, простой цикл forEach будет проверять равенство между индексами.

Пример:

$scope.blinkedBoxes = [1, 2 ..] // etc
$scope.clickedImages = [2, 1, ..] // etc

function functionToRunOnClickOrWhatever(){
    $scope.blinkedBoxes.forEach(function(val, index){
        var isEqual = val === $scope.clickedImages[index];

        if(isEqual){
            // do something?
        }
    });
}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню