js操作数组,不修改原数组

JavaScript015

js操作数组,不修改原数组,第1张

js数组是引用类型的值,我们直接将原数组赋值给新的变量,由于指针指向同一个内存地址,修改数组,原数组也会被修改。

如果不想原数组被修改,可以采用以下方法:

此时,再修改copyList的值,不会影响list的值。

es6的Array.from()和扩展语句也可以复制数组,而不会继续引用原数组。

基础用法链接:

slice

concat

Array.from()

... 扩展语句

1、添加元素

函数:push(para),参数说明para要添加的元素

示例:

var lang = ["php","java","javascript"]

lang.push('.net')

结果:lang = ["php","java","javascript",".net"]

2、删除和替换元素

函数:splice(para1,para2,para3),参数说明para1其实位置(从0开始),para2要删除的元素个数,para3(可选)要替换的元素

示例:

a、删除

var lang = ["php","java","javascript"]

lang.splice(0,1)

结果:lang = ["java","javascript",".net"]

b、替换

var lang = ["php","java","javascript"]

lang.splice(0,1,'.net')

结果:lang = [".net","javascript",".net"]