Array类型
ECMAScriipt数组与其他语言中的数组都是数据的有序列表,但与其他语言不同的是,ECMAScript数组的每一项都可以保存任何数据类型。
而且ECMAScript数组的大小是可以动态调整的,即可以随着数据的添加自动增长以及容纳新的数据。
创建数组的方法
var colors = new Array();//
var colors = new Array(20);//创建20个项的数组。
var colors = new Array("red","blue",“green”);//创建包含三个项的数组
var names = new Array("gred"); //创建一个包含1项字符串的数组
var colors = ["red","blue","green"];
var names = [];
Array的属性方法
length属性数组的长度,可写
未定义的数组项为undefined
方法
toLocalString();
toString();
valueOf();
join() //组合数组项输入参数为分隔符。
//栈方法 后进先出
push() //接受任意数量的参数,把它们逐个添加到数组的末尾,并返回修改后数组的长度。
pop() //从数组末尾移除最后一项。并减少length的值
//队列方法 先进先出
shift() //移除数组中的第一项并返回该项。
unshift()//能在数组前端添加任何各项并返回新数组的长度。
//重排序方法
var values = [1,2,3,4,5];
values.reverse();
alert(value); //5,4,3,2,1
//reverse反转数组的顺序。
sort() //默认升序排列 比较的是字符串 即使是数字
//可以接受一个比较函数作为参数,以便指定哪个值位于前面
function compare(value1, value2) {
if(value1 < value2){
return -1;
}else if(value1 > value2){
return 1;
}else{
return 0;
}
//操作方法
concat() //该方法会先创建一个当前数组的副本,然后将接受到的参数添加到这个副本的末尾,最后返回新创建的数组。
slice() //方法 返回起始位置和结束位置之间的项,但不包括结束为止的项不会影响原数组。
splice() //参数一要删除的起始位置,删除多少个,后面为插入的项。