陣列我要讓下一個數組基於另一個2個陣列:困惑於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所要求的數組嗎? –
讓我仔細檢查一下,看起來像是我在我的小提琴中編輯。現在它已更新。看起來我已經翻過了他們。工作演示和答案應該是正確的。 –
以基準! –