ar4为什么打印的和ar3不一样?

来源:6-3 扩展运算符(扩展运算符及新方法)

芥子1204

2019-04-29 11:53:41

ar1=[1,2,3];

ar2=[4,5,6];

ar3=ar2.concat(ar2);

ar4=Array.prototype.push.apply(ar1,ar2);

console.log(ar3,"ar3");

console.log(ar4,"ar4");


写回答

1回答

好帮手慕慕子

2019-04-29

同学你好,因为push方法返回的结果是新数组的长度

示例:数组原来的长度为4, 使用push方法添加一个元素后, 返回的数组的长度5. 

http://img.mukewang.com/climg/5cc68dbf0001464102760183.jpg

另,  apply方法第一个参数是对象,如果前面调用apply方法的函数中有this的话,可以改变this的指向。 第二个参数值数组。

这里可以不使用aplly方法, 直接使用扩展运算符结合push方法将两个数组合并成一个数组。 示例:

http://img.mukewang.com/climg/5cc68fd30001119408110420.jpg

如果帮助到了你, 欢迎采纳!

祝学习愉快~~~


0

0 学习 · 10739 问题

查看课程