JavaScript Array 对象常用方法详解
本文系统梳理了 JavaScript 中 Array 对象的核心用法,涵盖使用 new、构造函数及字面量三种创建方式。详细解析了 concat、push、pop、shift、unshift、slice、splice 等常用方法的参数与返回值,并对比了 substring 与 substr 的区别,最后介绍 sort、reverse 及字符串转换方法,帮助开发者掌握数组操作技巧。
在前端面试中,数组相关的问题常被提及。针对这一高频考点,本文对 JavaScript 中常用的数组操作方法进行系统总结。
数组(Array)对象定义
一、何为数组(Array)对象
数组是一种使用单一变量名存储一系列值的对象。
数组的三种创建方式
二、创建数组的三种方式
2.1 使用关键词 new 来创建数组对象。
let myStar =new Array();
myStar[0]="刘德华";
myStar[1]="成龙";
myStar[2]="林青霞";
myStar[3]="王菲";
console.log(myStar);
2.2 基于 2.1 的简洁写法
let myStar1=new Array("刘德华","成龙","林青霞","王菲");
console.log(myStar1[2]);//访问数组,Arry[索引值]
2.3 对象字面量创建数组对象
let myStar2=["刘德华","成龙","林青霞","王菲"];
console.log(myStar2);
注意:数组中的元素类型可以混合,包括 string、Boolean、number 类型、空数组,甚至可以是函数对象。
数组常用操作方法详解
三、数组对象的基本方法
3.1 concat()
concat() 方法用于连接两个或多个数组。该方法不会修改现有数组,而是返回一个新数组,包含被连接数组的所有元素。
var arry1=[1,2,3];
var arry2=[1];
var arry3=["Hi",true];
var arry4=arry1.concat(arry2,arry3);
console.log(arry4);//[1, 2, 3, 1, "Hi", true]
3.2 join()
join() 方法将数组中的所有元素合并为一个字符串。元素之间通过指定的分隔符进行分隔,若未指定分隔符,则默认使用逗号(',')分割。
var arr=[1,6,8];
console.log(arr.join('/'));// 1/6/8
console.log(arr.join('-'));// 1-6-8
3.3 push()
push() 方法用于向数组末尾添加一个或多个元素,并返回数组的新长度。此操作会直接修改原数组。
var a =[9,8,5];
var b=a.push(2,1,1);
console.log(a);//[9, 8, 5, 2, 1, 1]
console.log(b); //6
3.4 pop()
pop() 方法用于删除并返回数组的最后一个元素。此操作会直接修改原数组。
var c=[2,9,5];
console.log(c.pop());//5
console.log(c);//[2, 9]
3.5 shift()
shift() 方法用于删除并返回数组的第一个元素。此操作会直接修改原数组。
var arr2=[4,5,6];
console.log(arr2.shift());//4
console.log(arr2);//[5, 6]
3.6 unshift()
unshift() 方法用于向数组开头添加一个或多个元素,并返回数组的新长度。此操作会直接修改原数组。
var arr3=[4,6,8,9];
console.log(arr3.unshift(1,2));//6
console.log(arr3);// [1, 2, 4, 6, 8, 9]
3.7 slice()
slice() 方法返回一个新数组,包含从 start 到 end(不包括 end)之间的 arrayObject 元素。
该方法返回选定的元素,但不会修改原数组。
var arr4=[3,3,4,6]
console.log(arr4.slice(0,3));//[3, 3, 4]
console.log(arr4);//[3,3,4,6]
3.8 splice()
splice() 方法用于向/从数组中添加或删除项目,并返回被删除的项目。此操作会直接修改原始数组。
格式:splice(从哪开始(index), 删除的个数, 添加一个或多个元素)
var aa = [5,6,7,8];
console.log(aa.splice(1,0,9)); //[]
console.log(aa); // [5, 9, 6, 7, 8]
var bb = [5,6,7,8];
console.log(bb.splice(1,2,3)); //[6, 7]
console.log(bb); //[5, 3, 8]
3.9 substring() 和 substr()
var str = '123456789';
console.log("123456789".substr(2,5)); // "34567"
console.log("123456789".substring(2,5)) ;// "345"
区别:均接受两个参数
substr(从哪开始,选取个数);
substring( 从哪开始,到哪结束);
3.10 sort() 排序
var fruit = ['cherries', 'apples', 'bananas',1,2,10];
console.log(fruit.sort())// [1, 10, 2, "apples", "bananas", "cherries"]
3.11 reverse()
var arr = [2,3,4];
console.log(arr.reverse()); //[4, 3, 2]
console.log(arr); //[4, 3, 2]
3.12 toLocaleString(); toString()
toLocaleString() 将数组转换为本地字符串。
toString() 方法可将数组转换为字符串,并返回结果。
var myStar3=["刘德华","成龙","林青霞","王菲"];
var myStar4=["刘德华","成龙","林青霞","王菲"];
console.log(myStar3.toLocaleString());//刘德华,成龙,林青霞,王菲
console.log(myStar4.toString());//刘德华,成龙,林青霞,王菲
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持本站。
JS动态构建复杂嵌套JSON对象的方法
2026-11-05 15:41:52
JS负数取余为什么是负数?详解余数与模运算区别
2026-11-05 13:34:41
JS 解压出现乱码或报错怎么解决?
2026-11-05 12:32:38
JS 中 startsWith、indexOf 与正则判断字符串前缀的对比
2026-11-04 22:19:43
JS解析Excel后怎么将数据转换为JSON格式
2026-11-04 20:58:28
