JavaScript常用数组API

数组简介

    JS数组是指将多个数据对象编码存储,提供一致的存取方式的集合。数组能阻止存储各种各样的数据,每个数据对象都是数组的一个元素,通过数组对象的有关方法添加到数组中,并为之分配一个唯一的索引号。

数组对象的常见操作

    Array对象提供常用的方法包括:toString, join, push, pop, unshift, shift, concat, slice, reverse, sort和toLocaleString等。

字符转换

    toString方法将数组表示为字符串,各个元素按顺序排列组合成为字符串返回。语法如下:
对象名.toString( radix )
其中radix为可选参数,表示进制,当对象时数字时,该参数起作用。示例:

var names = ["Jim","Lucy","Peter","Victor"];
document.write(names.toString);

字符连接

    要想指定数组各元素之间的连接符,可用join方法。该方法与toString一样,也是将各元素组合成字符串,但连接符可自己指定,语法如下:
数组名.join("连接符")
若不想要任何连接符,则括号中用空字符即可。

数据添加 - 在数组尾部添加元素

    push方法一次可添加单个或多个元素到数组末端,也可以添加数组。语法如下:
数组名.push("元素1","元素2",...)
示例:

var list = [];
while(true){
	var name = prompt("请输入名字:");
	list.push(name);
	if(name == "") break;
}
document.write(list.join(" "));

添加数据 - 在数组头部添加元素

    unshift方法与push方法正好相反,是将元素插入数组的首部。一次可以插入单个或多个元素,所有元素按顺序插入,操作完成后返回新数组的引用。语法如下:
数组名.unshift("元素1","元素2",...)
示例:

var queue = ["a","b","c","d"];
queue.unshift("d","e");
document.write("<br>"+queue)

    注:如果不计较元素插入的位置,则推荐使用push,因为unshift方法会引发数组下标的改动,可能会影响依靠下标才能准确进行的计算。

数据更新 - 删除数组的最后一个元素

    pop方法的作用是移除数组末尾的一个元素。删除数组中的元素还可用delete 数组名[下标],不过与delete不同的是,pop方法删除最后一个元素后,还将其引用返回。pop通常与push方法结合使用,实现堆栈功能。语法如下:
数组名.pop()
示例:

var apple = ["苹果1","苹果2","苹果3","苹果4","苹果5"];
while(apple.length != 0){
	var handle = apple.pop();
	document.write("<br>分出:"+handle)
}

删除数据 - 移除数组顶端的元素

    shift方法与pop相反,移除数组的第一个元素并将其返回。该方法执行后,数组剩下的元素向前移动,下标索引号重新调整从0开始。shift与push方法结合使用,可以将数组当成队列使用。语法如下:
数组名.shift()
示例:

var client = ["顾客A","顾客B","顾客C","顾客D","顾客E"];
var tickets = 4;
while ( client.length!=0 && tickets>0 ){
	var current = client.shift();
	tickets--;
	document.write("<br>"+current+"买到票");
}

扩充数组 - 添加元素并生成新数组

    concat方法可以将多个数组元素连接在一起成为新的数组,语法如下:
数组名.concat(item1,item2,...)

var qa = ["顾客1","顾客2","顾客3","顾客4"];
var qb = ["顾客A","顾客B","顾客C","顾客D"];
document.write("窗口前两支队伍:" + "<br>" + qa + "<br>" + qb + "<br>");
var qc = qa.concat(qb);
document.write("两支队伍合并成一支新队伍:" + qc);

更新移动数据 - 删除、替换或插入数组元素

    splice方法的作用是,从一个数组中移除一个或多个元素。剩下的元素组成一个数组,移除的元素组成另一个数组并返回它的引用。同时,原数组可以在移除的开始位置处顺带插入一个或多个新元素,达到修改替换数组元素的目的。这个操作效果通常称为接合,语法如下:
数组名.splice(start,deleteCount,item1,item2,...)
参数说明:

  • start:必选项,表示从数组中剪切的起始位置下标索引号。
  • deteleCount:必选项,表示从数组中切取的元素个数。
  • item:可选项,表示切取时插入原数组切入点开始出的一个或多个元素。
    splice所有效果可简述为切分、替换和接合。示例:
var queueA = ["学生A","学生B","学生C","学生D"];
document.write("原来的队伍:" + queueA);
var queueB = queueA.splice(2,3);
document.write("新建的队伍:" + queueB);
document.write("调整后的队伍:" + queueA);
queueA.splice(1,0,"学生1","学生2");
document.write("添加后的队伍:" + queueA);

生成特定数据 - 获取数组中的一部分元素

    slice方法的作用是抽取数组的一段元素,抽取指定下标索引区间中的元素作为新数组返回。语法如下:
数组名.slice(start,end)
注:splice是直接修改原数组,而slice不会修改原数组。
示例:

var queueA = ["学生1","学生2","学生3","学生4","学生5"];
var queueB = queueA.slice(2,3);
document.write(queueA + "<br>");//经测试,queueA并没有改变
document.write(queueB);
posted @ 2017-09-27 23:13  与子为期  阅读(1494)  评论(0编辑  收藏  举报