JavaScript数组与字符串常用方法详解:修改与原值处理

作者:青柠

时间:2026-10-28

浏览:620

本文系统总结JavaScript中Array和String的常用方法。重点区分修改原数组的方法(如push、pop、reverse、splice)与返回新数组的方法(concat、slice、join)。同时详解String方法,包括match、exec在正则带g标志下的行为差异,以及slice、substring、split和replace的具体用法与参数限制。

文章目录

数组(Array)方法总结

一、数组(Array)方法总结

部分方法会直接修改原始数组。

push和unshift方法返回的是数组的新长度(length)。若增加的是值,则返回长度;其他情况返回该元素。

pop和shift方法返回被移除的那个元素。

reverse方法用于反转数组,返回反转后的数组引用。

splice(start, deleteCount, addItem...)方法用于从原数组中删除指定数量的元素,并可同时添加新元素,返回被删除元素组成的数组。

另一部分方法不会改变原始数组,而是返回一个新数组。

concat、join和slice(start, end)属于此类,它们返回新的数组或字符串。

需牢记:上述三个方法返回新数组,其余提到的方法均会改变原数组。

字符串(String)方法总结

二、字符串(String)方法总结

字符串方法不修改原始值,均返回一个新的String对象或其他类型的值。

1、需特别注意:string.match(regexp)在不带全局标志g时,与regexp.exec(string)的结果相同。

若正则表达式包含捕获分组,结果数组的下标0为匹配的子字符串,下标1为第一个分组捕获的文本。

若正则表达式带有g标志,string.match会生成包含所有匹配项的数组(不包含捕获分组);而正则的exec方法可以逐步执行,通过判断返回值是否为null来遍历匹配。

正则对象的lastIndex属性在此过程中均有效。

2、string.slice(start, end)中,end参数等于要取的最后一个字符的位置加1。若要从位置p开始获取第n个字符,应使用string.slice(p, p+n)。

string.substring的行为与array.slice方法类似。

3、进行替换或分组操作时,可以使用正则表达式。

string.split(separator, limit)中,limit参数用于限制被分割的片段数量,无论正则表达式是否带有g标志,该限制均生效。

string.replace(searchValue, replaceValue)中,若searchValue为正则表达式且带有g标志,将替换所有匹配项;若无g标志,仅替换第一个匹配项。

若searchValue为字符串,则仅在第一次出现的位置进行替换。

学习是一个循序渐进的过程,通过不断总结和学习,才能实现质的突破。近期一直在总结关于JavaScript的相关知识,希望自己和读者都能在此过程中提升水平。

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章