JavaScript字符串截取与分割的7种核心方法详解

作者:青柠时间:2026-11-01 01:54:59浏览:403

本文详细解析JavaScript中处理字符串的七种常用方法:slice、substring、substr、split、join、charAt及charCodeAt。重点对比各方法的语法参数、负数索引处理逻辑及返回值差异,涵盖从子串提取、字符分割到Unicode编码获取的完整场景,帮助开发者根据实际需求选择最高效的字符串操作方案。

1. slice()

该方法用于提取字符串的指定部分,并返回一个新的字符串对象。

语法格式为:array.slice(start, end)

start参数为必填项,用于指定提取的起始位置。若传入负数,则代表从字符串末尾向前计数(例如-1表示最后一个字符)。slice(-2)即提取从倒数第二个字符至末尾的所有内容(包含末尾字符)。end参数为可选项,用于指定提取的结束位置(不包含该位置的字符)。若省略此参数,则提取从start至字符串末尾的所有内容。若end为负数,同样表示从末尾倒数的位置。例如slice(-2,-1)仅提取倒数第二个字符,不包含最后一个字符。

var str = "123,456,789";
 
console.log(str.slice(2,6)); // 3,45
console.log(str.slice(-6,-2)); // 56,7
console.log(str.slice(2)); // 3,456,789
console.log(str.slice(-6)); // 56,789

2. substring()

该方法用于提取位于两个指定索引之间的子字符串。

语法格式为:string.substring(from, to)

from参数为必填项,必须是非负整数,指定子字符串起始字符在源字符串中的索引位置。to参数为可选项,必须是非负整数,指定子字符串结束字符的下一个索引位置(即不包含该位置的字符)。若省略to参数,则提取从from至字符串末尾的所有内容。需注意:若start大于end,该方法会自动交换两个参数;若任一参数为负数,则将其视为0;若start与end相等,则返回空字符串。

var str = "123,456,789";
 
console.log(str.substring(2,6)); // 3,45
console.log(str.substring(2)); // 3,456,789
console.log(str.substring(6,2)); // 3,45
console.log(str.substring(-6,-2)); //  
console.log(str.substring(6,6)); // 

3. substr()

该方法用于从字符串的指定起始位置开始,提取指定长度的字符序列。

语法格式为:string.substr(start,length)

start:必需。要抽取的子串的起始下标,必须是数值。 如果是负数,那么该参数声明从字符串的尾部开始算起的位置。 也就是说,-1 指字符串中最后一个字符,-2 指倒数第二个字符,以此类推。 length:可选。子串中的字符数,必须是数值。 如果省略了该参数,那么返回从 stringObject 的开始位置到结尾的字串。

注意:substr() 方法不会改变源字符串。

var str = "123,456,789";
 
console.log(str.substr(2,6)); // 3,456,
console.log(str.substr(0)); // 123,456,789
console.log(str.substr(-2)); // 89 

4. split()

该方法用于将字符串按照指定的分隔符拆分为字符串数组。

语法格式为:string.split(separator,limit)

separator参数为可选项,可以是字符串或正则表达式,用于指定分割点。若使用空字符串(""),则字符串中的每个字符都会被单独分割。limit参数为可选项,用于限制返回数组的最大长度。若设置了该参数,返回的子串数量不会超过此值;若未设置,则分割整个字符串,不受长度限制。注意:split() 方法不改变原始字符串。

var str = "123,456,789";
 
console.log(str.split('')); // ["1", "2", "3", ",", "4", "5", "6", ",", "7", "8", "9"]
console.log(str.split(',')); // ["123", "456", "789"]

5. join()

该方法用于将数组中的所有元素连接并转换为一个字符串。

语法格式为:array.join(separator)

separator参数为可选项,用于指定元素之间的分隔符。若省略该参数,默认使用逗号(,)作为分隔符。

var str = [123,456,789];
 
console.log(str.join('')); // 123456789
console.log(str.join(',')); // 123,456,789

6. charAt()

该方法用于返回字符串中指定索引位置的字符。

语法格式为:string.charAt(index)

index参数为必填项,表示字符串中某个字符的位置索引。

var str = '123,456,789';
 
console.log(str.charAt(2)); // 2

7. charCodeAt()

该方法用于返回指定位置字符的Unicode编码值。

语法格式为:string.charCodeAt(index)

index参数为必填项,表示字符串中某个字符的位置索引。

var str = '123,456,789';
 
console.log(str.charCodeAt(2)); // 51

以上介绍了JavaScript中处理字符串的七种核心方法。如需了解更多JavaScript字符串操作技巧,可参考本站相关文章或继续浏览后续内容,感谢支持!

作者最新文章