将阵列推入另一个阵列
问题描述:
我有以下数组。将阵列推入另一个阵列
var arr1=[1,2,3];
var arr2=[4,5,6];
var arr3=[];
如何将推动ARR1和ARR2成ARR3使得结果是:
arr3=[[1,2,3],[4,5,6]];
不被使用.concat
方法时产生
arr3=[1,2,3,4,5,6];
。
答
var arr1=[1,2,3];
var arr2=[4,5,6];
var arr3=[];
arr3.push(arr1,arr2);
console.log(arr3);
答
arr3.push(arr1);
arr3.push(arr2);
将做的工作。 无论如何,只要按照http://www.w3schools.com/jsref/jsref_push.asp进一步澄清。 希望这有助于。
答
var arr1=[1,2,3];
var arr2=[4,5,6];
var arr3 = [arr1,arr2];
console.log(arr3);
答
您可以在其他的答案中使用push()
像或本:
var arr1 = [1,2,3];
var arr2 = [4,5,6];
var arr3 = [arr1, arr2];
console.log(arr3);
答
由于其他用户发布,在你的问题的解决方案是使用.push()方法,但我会尝试给你更多关于这两种方法的信息。
我建议你看看这个article,对我来说非常有用;我在下面回顾了你的主要信息。当要添加一种或多种元素,即分别为输入参数
推送方法
Push方法被使用,给调用方法的阵列。
甲简单地例子如下:
var first_array = [1, 2, 3];
var result = first_array.push(4, 5, 6);
console.log(result); // 6
console.log(first_array); // [1, 2, 3, 4, 5, 6]
的一两件事是不会立即显现的是,它增加新的值,而不是修改后的数组后返回数组的长度。 (检查第三行:console.log(result);
)
concat方法
虽然推改变返回与原来的阵列的新的数组与阵列/秒或值/ s的接合调用它的阵列,的concat那作为参数提供。
有几件事要注意关于concat以及它如何创建返回的数组。
字符串和数字都被复制到数组中,这意味着如果原始值发生更改,新数组中的值将不受影响。
这不适用于对象。
不是将对象复制到新数组中,而是复制引用。这意味着如果对象的值在一个数组中改变,它们也将在另一个数组中改变,因为它们是对象而不是唯一副本的引用。
一个简单的例子如下:
var test = [1, 2, 3]; // [1, 2, 3]
var example = [{ test: 'test value'}, 'a', 'b', 4, 5];
var concatExample = test.concat(example); // [1, 2, 3, { test: 'test value'}, 'a', 'b', 4, 5]
example[0].test = 'a changed value';
console.log(concatExample[3].test); // Object { test: "a changed value"}
example[1] = 'dog';
console.log(concatExample[4]); // 'a'
我已经为您创建了fiddle这个例子。
我希望这会有帮助
使用'push()'??? – epascarello
你是如何设法首先得到结果'[1,2,3,4,5,6]'......? – deceze
jee wiz我很喜欢它。我在返回语句中使用了push()。 – valzavagoth