JS数组的concat方法
2021-05-18 本文已影响0人
空空雨夜
concat方法有两种功能
功能一:拷贝数组
语法: arr2 = arr1.concat()
说明:concat不传如参数,则拷贝原数组,生成一个新的数组,原数组不会发生改变
原理: 代码运行段中生成arr1 和 arr2变量, 堆内存中生成包含[1,2,3]数据指向变量arr1。使用concat()方法后,将堆内存[1,2,3]数组数据进行拷贝生成一个新的堆内存指向arr2变量
例子:
var arr1 = [1,2,3]
var arr2 = arr1.concat()
arr2.push('hello')
console.log(arr2); // 1 2 3 'hello'
console.log(arr1); // 1 2 3
功能二:合并数组
格式: arr1.concat(arr2, 变量、常量等一切数据)
说明:cancat()传入参数时,将数组1和传入的所有参数,都合并成一个新的数组,原数组不会改变
例子:
var ARR1 = [10, 20, true];
var ARR2 = ['567', '一人之下', '比博燃'];
var newARR = ARR1.concat(ARR2, 'cd', '漫威');
console.log(ARR1) // 10 20 true
console.log(ARR2) // '567' '一人之下' '博人传'
console.log(newARR) // 10 20 true 567' '一人之下' '比博燃'' cd' '漫威'