js 数组操作函数

Posted by 昆山吴彦祖 on 2019.04.14

数组新增元素

push 在数组尾部新增元素,改变原数组,可添加多个元素 

unshift()  头部增加,和push刚好相反  改变原数组

var arr = []; //创建一个空数组
console.log(arr); // []
console.log("入栈"); // 入栈
arr.push(1); // 将1添加到数组arr中
console.log(arr); // [1]
arr.push(2); //将2添加到数组arr中
console.log(arr); //[1,2]
arr.push([3,4]); // 将数组[3,4]添加到arr中
console.log(arr); // [1,2,[3,4]]
console.log(arr.length); // 3


数组删除元素

pop(),push的反函数,从尾部减少元素,如果数组为空,放回undefine.  会改变原数组

shift(),unshift()的反函数,同上 改变原数组

delete()   delete删除掉数组中的元素后,会把该下标出的值置为undefined,数组的长度不会变,改变原数组

arr = ['a','b','c','d']
delete arr[1]  //['a', ,'c','d']


splice(index,len,[item])  

splice() 方法向/从数组指定位置添加/删除/替换 元素,然后返回更新后的数组。  改变原数组内容

//删除
arr = ['a','b','c','d']
arr.splice(1,1)   //['a','c','d']         删除起始下标为1,长度为1的一个值,len设置的1,如果为0,则数组不变
arr.splice(1,2)  //['a','d']          删除起始下标为1,长度为2的一个值,len设置的2

//替换 ---- item为替换的值
arr.splice(1,1,'ttt')        //['a','ttt','c','d']         替换起始下标为1,长度为1的一个值为‘ttt’,len设置的1
arr.splice(1,2,'ttt')        //['a','ttt','d']         替换起始下标为1,长度为2的两个值为‘ttt’,len设置的1

//添加 ----  len设置为0,item为添加的值

arr.splice(1,0,'ttt')        //['a','ttt','b','c','d']         表示在下标为1处添加一项‘ttt’


数组合并

concat() , 不改变原数组

var a=[1,2,3],b=[4,5,6];
var c=a.concat(b);
console.log(c);// 1,2,3,4,5,6
console.log(a);// 1,2,3  不改变本身


遍历

var arr1=['a','b'];
var arr2=['c','d','e'];
 
for(var i=0;i<arr2.length;i++){
 arr1.push=arr2[i]
}

数组