JS 数组的 push 与 concat 区别

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS 数组的 push 与 concat 区别相关的知识,希望对你有一定的参考价值。

1、功能不同

push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。

concat() 方法用于连接两个或多个数组,该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。

2、函数不同

push() :

var a = [1,2,3,4];

a.push(5);  //a 现在是1,2,3,4,5

concat() :

var a = [1,2,3,4];

var b = [5,6];

var c = a.concat(b); // a,b 数组都不变,c变成了1,2,3,4,5,6


扩展资料:

push是一个汇编术语,实现压入操作的指令是PUSH指令,实现弹出操作的指令是POP指令。

push() 说明

push() 方法可把它的参数顺序添加到 arrayObject 的尾部。它直接修改 arrayObject,而不是创建一个新的数组。push() 方法和 pop() 方法使用数组提供的先进后出栈的功能。

concat() 返回值

返回一个新的数组。该数组是通过把所有 arrayX 参数添加到 arrayObject 中生成的。如果要进行 concat() 操作的参数是数组,那么添加的是数组中的元素,而不是数组。

例子 

把 concat() 中的参数连接到数组 a 中:

<script type="text/javascript">

var a = [1,2,3];

document.write(a.concat(4,5));

</script>

输出:1,2,3,4,5

参考资料来源: 百度百科-push (汇编术语)

参考技术A push 的定义是:向数组的末尾添加一个或更多元素,并返回新的长度。该方法会改变数组的长度。

concat 的定义是:连接两个或更多的数组,并返回结果。该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。

<script type="text/javascript">

var a = [1,2];
document.write(a.concat(3,4,5));//1,2,3,4,5
document.write(a.push(3,4,5));//5
</script>

本回答被提问者和网友采纳
参考技术B

push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。

var a = [1,2,3,4];
a.push(5);  //a 现在是1,2,3,4,5

concat() 方法用于连接两个或多个数组。该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。

var a = [1,2,3,4];
var b = [5,6];
var c = a.concat(b); // a,b 数组都不变,c变成了1,2,3,4,5,6

参考技术C push是把值添加到数组末端,concat是链接两个数组,这是很明显的区别,建议你多看看w3cschool 参考技术D push是把值添加到数组末端,
concat是链接两个数组

以上是关于JS 数组的 push 与 concat 区别的主要内容,如果未能解决你的问题,请参考以下文章

JS增删改查

JavaScript引用类型之Array数组的concat()和push()方法的区别

用js中push追加和直接用符字符串追加有啥区别

js常用增删改查方法/js比较运算符 逻辑运算符 赋值运算符 算术运算符

js push 可以push一个数组么

js中array的join和concat的区别