一:创建数组
1:使用Array构造函数(new可以省略):
var colors = new Array();创建length值为20的的数组: var colors = new Array(20); 直接传递数组的项: var colors = new Array("red", "blue", "green");
2:使用数组字面量表示法:
var colors = ["red", "blue", "green"];
3:读取和设置数组的值
colors[2] = "black" //修改第三项 colors[3] = "brown" //新增第四项 colors.length = 2; //数组长度缩短为2 colors[colors.length] = "white" //设置最后一项
二:检测数组
1:一个全局作用域的情况下:
if(value instanceof Array){ //执行某些操作 }
2:无视多个全局作用域,确定是否为数组:
if(Array.isArray(value)){ //对数组执行某些操作(ie9+) }
三:转换方法(toString(),valueOf(),join())
var colors = ["red", "blue", "green"]; alert(colors.toString()); //red,blue,green以逗号分隔的字符串 alert(colors.valueOf()); //red,blue,green返回的是数组 alert(colors); //red,blue,green
var colors2 = ["red", "blue", "green"]; alert(colors2.join(",")); //red,blue,green alert(colors2.join("||")); //red||blue||green
四:栈方法(push(),pop()),队列方法(shirt(),push())
var colors = new Array(); var count = colors.push("red","blue","green"); //向后插入两项 alert(count); //3 alert(colors); //red,blue,green var item = colors.pop(); //移除最后一项并返回 alert(item); //greenalert(colors.length) //2 var item2 = colors.shift(); //移除第一项并返回alert(item2); //redalert(colors.length) //1 var count2 = colors.unshift("black","white");alert(count2); //3alert(colors); //black,white,blue
五:重排序方法(reverse(),sort())
var values = [0,1,5,10,15]; values.reverse(); //翻转数组 alert(values); //15,10,5,1,0 values.sort(); //升序排列,先调用tostring()将数组项转换成字符串,然后比较字符串。 alert(values); //0,1,10,15,5
values.sort(compare); //加入比较函数alert(values) //0,1,5,10,15
function compare(value1,value2){ return value1 - value1; //降序}
时间: 2024-10-16 01:37:42