zorro76
@zorro76

Как написать функцию js которая сравнивает два числовых массива A и B?

Результат:
true - в случае, если массивы одинаковы по длине, и элементы массива A равны элементам массива B; Как это корректно и правильно написать. Помогите или объясните доступно, буду признателен.
как пример
compare([7,2], [7,2]) → true
  • Вопрос задан
  • 1424 просмотра
Решения вопроса 3
@dmitryKovalskiy
программист средней руки
ну начать с
if(a.length==b.length){
for(var i = 0; i<a.length;i++)
{
if(a[i]!=b[i])
{
return false
}
}
return true;
}
else
{
return false;
}

А как вы будете сравнивать элементы - ваше дело. Зависит от того заботят вас типы данных или только значения
Ответ написан
Функция предикат.
var equalArrays = function (array, compareArray) {
    var i, len = array.length;
    if (len !== compareArray.length) {
        return false;
    }
    for (i = 0; i < len; i += 1) {
        if (array[i] !== compareArray[i]) {
            return false;
        }
    }
    return true;
};
Ответ написан
Stalker_RED
@Stalker_RED
Нахождение разницы массивов
diff = function (a1, a2) {
    return a1.filter(function(i) {return a2.indexOf(i) < 0;})
    .concat(a2.filter(function(i) {return a1.indexOf(i) < 0;}))
}

Проверка на полное совпадение
compare = function (a1, a2) {
    return a1.length == a2.length && a1.every(function(v,i) { return v === a2[i]})
}

тесты здесь: jsfiddle.net/Stalk/7h5ahq5k
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы