Я хочу сделать следующий массив на основе еще 2 массивов:Confused о массивах на JavaScript
array1 = ['a', 'b']
array2 = [1,2,3]
Я хочу, чтобы создать следующий массив
newArray = [['a',1], ['a',2], ['a',3], ['b',1], ['b',2], ['b',3]]
Вот мой код:
var test1 = ['a', 'b'];
var test2 = [1,2,3], arr1 = [], arr2 = [];
for(var i = 0; i < test1.length; i++){
arr1 = [];
arr1.push(test1[i]);
for(var x = 0; x < test2.length; x++){
if(arr1.length > 1)
\t arr1.pop();
arr1.push(test2[x])
arr2.push(arr1);
}
}
console.log("arr1:",JSON.stringify(arr1), "arr2:" ,JSON.stringify(arr2));
Но он возвращает последний элемент второго массива.
[['a',3], ['a',3], ['a',3], ['b',3], ['b',3], ['b',3]]
Почему это происходит?
приятный! должно ли оно быть 'return [item1, item2]' для создания массива в виде запроса OP? –
Позвольте мне дважды проверить это, похоже, да, у меня это было в моей скрипке, редактирование. Теперь он обновляется. Похоже, я их оборвал. Рабочая демонстрация и ответ должны быть правильными. –
К бенчмаркам! –