本文摘自PHP中文网,作者青灯夜游,侵删。

JavaScript数组用于在单个变量中存储多个值。数组是一个特殊变量,一次可以包含多个值。
【相关课程推荐:JavaScript视频教程】
将数组转换为字符串
JavaScript toString()方法将数组转换为(逗号分隔的)数组值的字符串。
例子:
1 2 | var fruits = [ "Banana" , "Orange" , "Apple" , "Mango" ];
document.getElementById( "demo" ).innerHTML = fruits.toString();
|
join()方法还将所有数组元素连接成一个字符串。它的行为就像toString(),但另外你可以指定分隔符:
1 2 | var fruits = [ "Banana" , "Orange" , "Apple" , "Mango" ];
document.getElementById( "demo" ).innerHTML = fruits.join( " * " );
|
pop()和push()
使用数组时,很容易删除元素和添加新元素。这就是pop()方法和push()方法。
pop()方法从数组中删除最后一个元素:
1 2 | var fruits = [ "Banana" , "Orange" , "Apple" , "Mango" ];
fruits.pop();
|
pop()方法返回“弹出”的值:
1 2 | var fruits = [ "Banana" , "Orange" , "Apple" , "Mango" ];
var x = fruits.pop();
|
push()方法向数组最后添加一个新元素:
1 2 | var fruits = [ "Banana" , "Orange" , "Apple" , "Mango" ];
fruits.push( "Kiwi" );
|
push()方法返回新的数组长度:
1 2 | var fruits = [ "Banana" , "Orange" , "Apple" , "Mango" ];
var x = fruits.push( "Kiwi" );
|
shift()和unshift()
shift()方法删除第一个数组元素并将所有其他元素“移位”到较低的索引。
1 2 | var fruits = [ "Banana" , "Orange" , "Apple" , "Mango" ];
fruits.shift();
|
shift()方法返回“向外移出”的字符串:
1 2 | var fruits = [ "Banana" , "Orange" , "Apple" , "Mango" ];
var x = fruits.shift();
|
unshift()方法向数组开头添加一个新元素,并把旧元素向高的索引移动:
1 2 | var fruits = [ "Banana" , "Orange" , "Apple" , "Mango" ];
fruits.unshift( "Lemon" );
|
unshift()方法返回新的数组长度。
1 2 | var fruits = [ "Banana" , "Orange" , "Apple" , "Mango" ];
fruits.unshift( "Lemon" );
|
改变元素
使用索引号访问数组元素:
数组索引以0开头。[0]是第一个数组元素,[1]是第二个,[2]是第三个...
1 2 | var fruits = [ "Banana" , "Orange" , "Apple" , "Mango" ];
fruits[0] = "Kiwi" ;
|
length属性提供了一种将新元素附加到数组的简单方法:
1 2 | var fruits = [ "Banana" , "Orange" , "Apple" , "Mango" ];
fruits[fruits.length] = "Kiwi" ;
|
删除元素
由于JavaScript数组是对象,因此可以使用JavaScript运算符delete删除元素:
1 2 | var fruits = [ "Banana" , "Orange" , "Apple" , "Mango" ];
delete fruits[0];
|
使用delete可能会在数组中留下undefined的孔。请改用pop()或shift()。
拼接数组
splice()方法可用于向数组添加新项:
1 2 | var fruits = [ "Banana" , "Orange" , "Apple" , "Mango" ];
fruits.splice(2, 0, "Lemon" , "Kiwi" );
|
第一个参数(2)定义了位置,其中新的元件应被加入的位置(在接合)。第二个参数(0)定义应删除多少元素 。其余参数(“Lemon”,“Kiwi”)定义要添加的新元素 。splice()方法返回一个包含已删除项的数组:
1 2 | var fruits = [ "Banana" , "Orange" , "Apple" , "Mango" ];
fruits.splice(2, 2, "Lemon" , "Kiwi" );
|
使用splice()删除元素
通过巧妙的参数设置,您可以使用splice()删除元素而不在数组中留下“洞”:
1 2 | var fruits = [ "Banana" , "Orange" , "Apple" , "Mango" ];
fruits.splice(0, 1);
|
第一个参数(0)定义应添加新元素的位置。第二个参数(1)定义应删除多少元素 。其余参数被省略。不会添加任何新元素。
合并数组
通过concat()方法合并现有数组来创建新数组:
1 2 3 | var myGirls = [ "Cecilie" , "Lone" ];
var myBoys = [ "Emil" , "Tobias" , "Linus" ];
var myChildren = myGirls.concat(myBoys);
|
concat()方法不会更改现有数组。它总是返回一个新数组。
concat()方法可以使用任意数量的数组参数
1 2 3 4 | var arr1 = [ "Cecilie" , "Lone" ];
var arr2 = [ "Emil" , "Tobias" , "Linus" ];
var arr3 = [ "Robin" , "Morgan" ];
var myChildren = arr1.concat(arr2, arr3);
|
concat()方法还可以将值作为参数:
1 2 | var arr1 = [ "Cecilie" , "Lone" ];
var myChildren = arr1.concat([ "Emil" , "Tobias" , "Linus" ]);
|
数组切片
slice()方法将一个数组切成一个新数组。此示例从数组元素1(“Orange”)开始切出数组的一部分:
1 2 | var fruits = [ "Banana" , "Orange" , "Lemon" , "Apple" , "Mango" ];
var citrus = fruits.slice(1);
|
slice()方法创建一个新数组。它不会从源数组中删除任何元素。
此示例从数组元素3(“Apple”)开始切出数组的一部分:
1 2 | var fruits = [ "Banana" , "Orange" , "Lemon" , "Apple" , "Mango" ];
var citrus = fruits.slice(3);
|
slice()方法可以采用两个参数slice(start,end)。方法从start参数中选择元素,直到(但不包括)end参数。
1 2 | var fruits = [ "Banana" , "Orange" , "Lemon" , "Apple" , "Mango" ];
var citrus = fruits.slice(1, 3);
|
如果省略end参数,就像在第一个示例中那样,slice()方法将切掉数组的其余部分。
1 2 | var fruits = [ "Banana" , "Orange" , "Lemon" , "Apple" , "Mango" ];
var citrus = fruits.slice(2);
|
自动toString()
当需要原始值时,JavaScript会自动将数组转换为逗号分隔的字符串。尝试输出数组时总是如此。这两个例子将产生相同的结果:
1 2 3 4 | var fruits = [ "Banana" , "Orange" , "Apple" , "Mango" ];
document.getElementById( "demo" ).innerHTML = fruits.toString();
var fruits = [ "Banana" , "Orange" , "Apple" , "Mango" ];
document.getElementById( "demo" ).innerHTML = fruits;
|
所有JavaScript对象都有一个toString()方法。
本文来自 js教程 栏目,欢迎学习!
以上就是浅谈JS数组Array的用法的详细内容,更多文章请关注木庄网络博客!
相关阅读 >>
javascript dom方法有哪些
javascript单元测试有什么用
教你一招网课作业如何复制粘贴
js中箭头函数和普通函数的区别是什么
javascript怎么判断是否包含指定字符串
如何使用canvas画一个微笑的表情(代码示例)
ie如何关闭javascript脚本
javascript如何转为json字符串
数组长度用size还是length
html和js实现简单的计算器
更多相关阅读请进入《javascript》频道 >>
人民邮电出版社
本书对 Vue.js 3 技术细节的分析非常可靠,对于需要深入理解 Vue.js 3 的用户会有很大的帮助。——尤雨溪,Vue.js作者
转载请注明出处:木庄网络博客 » 浅谈JS数组Array的用法