我经常会混淆JS数组中常用的方法,然后每次做题每次错(泪的教训啊呜呜呜),终于我下定决心来好好整理一下!下面是JS数组中常用的方法:
push(item1,item2,…)、unshift(item1,item2,…)、pop()、shift()、reverse()、slice(startIndex,endIndex)、splice(index,num,item1,item2,…)、concat()、join(str)、indexOf(item)、lastIndexOf(item)。
- push(item1,item2,…)
作用:在数组的末尾添加一个或多个元素
返回值:添加数据后数组的长度
注意:改变原数组
代码示例:
//push(item1,item2,...)
var array=[1,2,3,4,5];
var returnArray=array.push(6,7,8);
console.log(array); //[1,2,3,4,5,6,7,8]
console.log(returnArray);//8
- unshift(item1,item2,…)
作用:在数组的开头添加一个或多个元素
返回值:添加数据后数组的长度
注意:改变原数组
代码示例:
//unshift(item1,item2,...)
var array=[1,2,3,4,5];
var returnArray=array.unshift(6,7,8);
console.log(array); //[6,7,8,1,2,3,4,5]
console.log(returnArray);//8
- pop()
作用:删除数组末尾的一个元素
返回值:被删除的元素
注意:改变原数组
代码示例:
//pop()
var array=[1,2,3,4,5];
var returnArray=array.pop();
console.log(array); //[1,2,3,4]
console.log(returnArray);//5
- shift()
作用:删除数组开头的一个元素
返回值:被删除的元素
注意:改变原数组
代码示例:
//shift()
var array=[1,2,3,4,5];
var returnArray=array.shift();
console.log(array); //[2,3,4,5]
console.log(returnArray);//1
- reverse()
作用:倒置数组元素
返回值:倒置以后的数组
注意:改变原数组
代码示例:
//reverse()
var array=[1,2,3,4,5];
var returnArray=array.reverse();
console.log(array); //[5,4,3,2,1]
console.log(returnArray);//[5,4,3,2,1]
- slice(startIndex,endIndex)
作用:从startIndex下标开始一直截取到endIndex下标之前,不包含endIndex下标元素
返回值:截取的数据数组
注意:改变原数组
代码示例:
//slice(startIndex,endIndex)
var array=[1,2,3,4,5,6];
var returnArray=array.slice(1,4);
console.log(array); //[1,2,3,4,5,6]
console.log(returnArray);//[2,3,4]
- splice(index,num,item1,item2,…)
作用:在数组的中间添加或者删除一下元素
返回值:含有被删除的元素数组
注意:改变原数组
代码示例:
//splice(index,num,item1,item2,...)
var array=[1,2,3,4,5,6];
var returnArray=array.splice(1,2,8,9);
console.log(array); //[1,8,9,4,5,6]
console.log(returnArray);//[2,3]
//从下标为i的位置删除0个元素,并添加两个元素
var returnArray=array.splice(1,0,10,11);
console.log(array); //[1,10,11,8,9,4,5,6]
console.log(returnArray);//[]
//如果下标大于原数组最大下标,则在数组最后添加元素
var returnArray=array.splice(10,2,8,9);
console.log(array); //[1,10,11,8,9,4,5,6,8,9]
console.log(returnArray);//[]
//如果省略可选参数,则删除对应元素个数
var returnArray=array.splice(1,2);
console.log(array); //[1,8,9,4,5,6,8,9]
console.log(returnArray);//[10,11]
- concat()
作用:将多个数组拼接成一个数组
返回值:拼接之后的数组,拼接后的元素将按照传入参数的顺序排列
注意:改变原数组
代码示例:
//concat() 不改变原数组
var array=[1,2,3];
var newArray=array.concat([4,5,6],'feifei',false);
console.log(array); //[1, 2, 3]
console.log(newArray);//[1, 2, 3, 4, 5, 6, "feifei", false]
- join(str)
作用:将数组的元素用参数字符串拼接成一个新的字符串
返回值:拼接的结果
注意:改变原数组
代码示例:
//join(str)
var array=[1,2,3,4,5];
var returnArray=array.join("->");
console.log(array); //[2,3,4,5]
console.log(returnArray);//1->2->3->4->5
- indexOf(item)
作用:从数组的左侧开始查找对应第一次出现的参数元素的下标
返回值:如果找到对应元素则返回下标值,否则返回-1
代码示例:
//indexOf(item)
var array=[1,2,3,4,5];
var returnArray=array.indexOf(3);
console.log(array); //[1, 2, 3, 4, 5]
console.log(returnArray);//2
- lastIndexOf(item)
作用:从数组的右侧开始查找对应第一次出现的参数元素的下标
返回值:如果找到对应元素则返回下标值,否则返回-1
代码示例:
//lastIndexOf(item)
var array=[1,2,3,4,5];
var returnArray=array.lastIndexOf(3);
console.log(array); //[1, 2, 3, 4, 5]
console.log(returnArray);//2
以上是JS数组常用方法的总结,希望可以帮到大家!