1、利用.length增加或减少数组长度 var colors=["red","blue","green"]; colors.length=2; //数组长度强制变为2 alert("colors[2]"); //undefined colors[colors.length]="black";//增加颜色black,数组长度又变3 colors[99]="brown"; //在位置99处增加颜色brown alert(color.length); //数组长度变为100 2、数组的toString()、valueof()、toLocaleString()方法 每个对象都有这三种方法。 当没有特别定义时,对数组调用这三种方法,返回值都是一样的,都是数组元素。 当对toLocaleString()方法进行特别定义时,返回值不同。 var person1={ toLocaleString:function(){ return "Nicholas"; }, toString:function(){ return "Nicholas"; } }; var person2={ toLocaleString:function(){ return "Grigorios"; }, toString:function(){ return "Greg"; } }; var people=[person1,person2]; alert(people); //Nicholas,Greg alert(people.toString()); //Nicholas,Greg alert(people.toLocaleString()); //Nicholas,Grigorios 3、栈方法 数组像栈一样运作,后进先出。 push():将元素添加数组末尾,返回修改后数组长度。 pop():从数组末尾移除项,返回被移除的项。 var colors=["red","blue","green"]; count=colors.push("black"); alert(count); //返回新长度4 var item=colors.pop(); alert(item); //返回被扔出的元素"black" 4、队列方法 shift():从数组前端移除(pop是后端移除) unshift():从数组前端推入(push是后端插入) var item=colors.shift(); alert(item); //返回第一个元素"red" var count=colors.unshift("red"); alert(count); //数组长度变4 var item=colors.pop(); alert(item); //最后一个元素是"black" 5、排序 reverse():反转 sort():按大小排序(非完全) var values=[1,2,3,4,5]; values.reverse(); alert(values); 6、连接数组 contat():连接两个数组 var colors=["red","black","blue"]; var colors2=colors.concat("yellow","purple"); alert(colors2); //red,black,blue,yellow,purple 7、基于当前数组创立新数组 slice():可以传一个参数,两个参数。 一个参数:从此位置以后的数组元素都留下。 两个参数:从开始位置到结束位置的元素,不包括结束位置。 var colors=["red","black","blue","yellow","purple"]; var colors2=colors.slice(1); //从第一项开始 var colors3=colors.slice(1,4);//从第一项开始到4 alert(colors2);//balck,blue,yellow,purple alert(colors3);//balck,blue,yellow 8、删除、插入、替换 splice(): 删除:两个参数。要删除的第一项位置,要删除的项数。 插入:三个参数。开始位置,0,要插入的项。(要插入的项可以多个) 替换:三个参数。开始位置,要删除的项数,要插入的项。(要插入的项可以多个) 所有方法返回被删除的项。 var colors=["red","green","blue"]; var removed=colors.splice(0,1); //移除数组第一项 alert(colors); //green,blue alert(removed); removed=colors.splice(1,0,"yellow","orange"); alert(colors); //green,yellow,orange,blue alert(removed); //返回空,因为没有移除 removed=colors.splice(1,1,"red","purple"); //从第一个位置开始,只删除一项 alert(colors); //green,red,purple,orange,blue alert(removed); //返回yellow