slice()方法它能够基于当前数组中的一个或多个项创建一个新数组。slice()方法可以接受一或者两个参数。即要范会香的起始和结束位置。
var colors = ['red','blue','green','black','brown'];
var color2 = colors.slice(1);
var color3 = colors.slice(1,4);
alert(color2); //blue,green,black,brown
alert(color3); //blue,green,black
如果slice( ) 方法的参数为负数,则用数组的长度加上该数确定相应的位置。 在一个包含5项的数组上调用slice(-2,-1)与调用slice(3,4)得到的位置结果是相同的。如果结束位置小于起始位置,则返回空数组。
splice( )方法,这个方法恐怕要算是最强大的数组方法。他有很多种用法。
删除 : 可以删除任意数量的项,只需要指定2个参数:要删除的第一项位置和要删除的项数。
splice(0,2);会删除数组中的前两项。
插入:可以向指定位置插入任意数量的项。只需要提供三个参数:起始位置、0(要删除的项数)和要插入的项。如果插入多个项,可在传入任意多个项。
splice(2,0,'red','yellow' ); 会从当前数组的第二位置开始插入
替换 : 可以向指定位置插入任意数量是项,并且同事删任意数量的项。只需要指定3个参数:起始位置、要删除的项数、要插入的任意项数,插入的项数不必与删除的项数相等。
splice(2,1,'red','green'); 会删除当前数组位置2的项,然后在从位置2开始插入字符串‘red’,‘green’。
splice()方法始终都会返回一个数组,该数组中包含从原始数组中删除的项,如果没有删除任何想则返回一个空数组。
var colors = ['red','blue','green'];
var removed = colors.splice(0,1);
alert(colors); //blue,green
alert(removed); //red
removed = colors.splice(1,0,'yellow','orange');
alert(colors); //blue,yellow,orange,green
alert(removed); // 空
removed = colors.splice(1,1,'red','purple');
alert(colors); //blue,red,purple,orange,green
alert(removed); //yellow