concat
撰写时间:2024-03-11
最新修订:2024-03-11
concat
合并其他数组或数值。不会改变原数组。
原型
*[]concat
- ... *values
参数
- ...values
- 要合并的可变长的数值。
返回值
返回合并之后的数组。
说明
concat方法最主要的目的是将多个数组合并为一个数组。但同时也可合并其他数据类型的元素。详见下面的例子。
例子
合并数组
当我们需要合并多个数组时,可使用concat方法。
调用arr1的concat方法,并以arr2作为参数传入,将导致将arr2的各个元素都添加在arr1的末尾,并返回添加后的新数组。而原来的数组不受影响。
注意,arr1及arr2均为数组,但数组的元素都展开为各个独立的元素并置于新的数组中。
省略参数
concat的参数values是可选的。当省略此参数时,将返回所调用数组的一个浅复制。
合并多种数据类型
concat方法不仅用于合并数组,也可用于合并其他数据类型的数值。
将类似数组的对象视为数组而合并
上例中,value2是一个类似数组的对象(array-like object)。但从上例看到,在合并时,concat方法默认情况下并未将其视为数组而合并,而是视为对象而合并。
要让concat将其视为一个数组而予以合并,可打开其Symbol.isConcatSpreadable
的开头。