Не могу понять где ошибки.
Задача:
необходимо написать функцию, которая проверяла - содержаться ли элементы массива array 2 в массиве array 1 и в зависимости от этого возвращала булевое значение.
Решение (неработающее):
Создаю два цикла:
-внешний цикл перебирает значения array1 и присваивает их var arrayElem, которая передаётся во внутренний цикл;
-во внутреннем цикле перебираются значения array2 и сравниваются с var arrayElem;
-если значения равны то array2[j] помещаеться в пустой массив matchArray;
-если длина массива matchArray === длине массива array2 возвращаеться true, иначе false.
Код:
|
function contains(array1, array2) {
"use strict";
array1 = [1, 2, 3, 4, 5];
what = [1, 2, 3];
var matchArray = [];
for (var i = 0; i < array1.length; i++) {
var arrayElem = array1[i];
for (var j = 0; j < what.length; i++) {
if (what[j] === arrayElem) {
matchArray.push(what[j]);
}
}
}
if (matchArray.length === what.length) {
return true;
} else {
return false;
}
} |