优秀的编程知识分享平台

网站首页 > 技术文章 正文

JavaScript数组的常用方法(js 数组常用方法)

nanyue 2024-09-08 06:00:25 技术文章 6 ℃

接着上文介绍的JavaScript数组的基本概念和定义、使用方法后,本文重点介绍数组的常用方法。

7.向数组中添加新元素

使用push()方法比如

var animals = [“dog”, “cat”, “pig”];
animals.push(“cow”);

或者使用length下标方法,比如

animals[animals.length] = “cow”;

8.数组方法

8.1 toString()把数组值转化为以逗号分隔的字符串。

var animals = [“dog”, “cat”, “pig”];
console.log(animals.toString())

结果为:dog,cat,pig

8.2 join()把数组值转化为自定义字符分隔的字符串

var animals = [“dog”, “cat”, “pig”];
console.log(animals.join(“*”))

的结果为:dog*cat*pig

8.3 push()入栈和pop()出栈

push()向数组尾部添加新元素,并返回新数组的长度。

var animals = [“dog”, “cat”, “pig”];
var len = animals.push(“cow”); //新数组结果为[“dog”, “cat”, “pig”,“cow”],len的值为4

pop()弹出(或删除)数组尾部的元素,返回被弹出的元素。

var animals = [“dog”, “cat”, “pig”];
var animal = animals.pop(); //新数组结果为[“dog”, “cat”],animal的值为“pig”。

8.4 unshift()反向位移和shift()位移

unshift()在数组首位添加新元素,并返回新数组的长度。

var animals = [“dog”, “cat”, “pig”];
var len = animals.unshift(“cow”);//结果为[“cow”,“dog”, “cat”, “pig”],len的值为4

shift()删除数组的首个元素,其他元素的下标前移,并返回删除的元素。

var animals = [“dog”, “cat”, “pig”];
var animal = animals.shift();//结果为[“dog”, “cat”, “pig”],animal的值为“cow”。

8.5 splice()用于向数组添加新元素或删除元素

var animals = [“dog”, “cat”, “pig”];
var removeds = animals.splice(1,2,“sheep”, “chick”);//原数组为添加或删除后的数组,返回值为删除的数组元素组成的数组。

结果为animals:[“dog”, “sheep”, “chick”],removed:[“cat”, “pig”];

说明:第一个参数为添加数组元素的开始位置;

第二个元素为从第一个参数开始,删除元素的个数;

第三个及以后的参数为新添加的元素。

8.6 concat()合并现有数组并返回一个新数组,不会改变原有数组的值。

var animal1s = [“dog”, “cat”, “pig”];
var animal2s = [“sheep”, “chick”];

var animals = animals.concat(animals);

或者var animals = animals.concat([“sheep”, “chick”]);

结果为: [“dog”, “cat”, “pig”,“sheep”, “chick”]

8.7 slice()用数组的某个片段切出新数组。

var animal1s = [“dog”, “cat”, “pig”,“sheep”, “chick”];
var animals = animal1s.slice(1,4);

结果为[“cat”, “pig”,“sheep”]

说明:第一个参数为开始位置,上例中从第1(下标)个元素开始。

第二个参数为结束位置,但是不包括结束位置,所以上例中不包括下标为4的元素。如果省略第二个参数值,则取值到尾部,包含尾部元素。

8.8 sort()以字母顺序对数组进行排序,改变原数组的值。

如果对数字进行排序会得到错误的结果,比如100会排到25的前面,但是如何对数字进行排序呢?可以使用回调函数的方式。比如

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a,b){return a-b;}); ?//升序
points.sort(function(a,b){return b-a;}); ?//降序

8.9 reverse() 反转数组中的元素,即从尾部到头部重新排列。和sort()一起用,可以实现倒序排列。


最近发表
标签列表