本文将从以下几个方面逐一介绍JS字符串切割方法,并给出详细的代码示例。
一、substring()
substring()方法是获取字符串指定位置之间的字符,包括起始位置但不包括结束位置。如果只有一个参数,则表示截取到字符串结尾。
let str = "hello world"; let subStr = str.substring(6, 11); console.log(subStr); // 输出"world"
如果参数传递的位置颠倒,会自动调整为正确的位置。
let str = "hello world"; let subStr = str.substring(11, 6); console.log(subStr); // 输出"world"
二、substr()
substr()方法与substring()方法很相似,返回从指定位置开始的指定长度的子字符串。如果只传递一个参数,则表示截取到字符串结尾。
let str = "hello world"; let subStr = str.substr(6, 5); console.log(subStr); // 输出"world"
需要注意的是:如果第一个参数是负数,表示从字符串结尾开始计算。如果第二个参数是负数,则表示从倒数第n个字符截取。
let str = "hello world"; let subStr = str.substr(-5); console.log(subStr); // 输出"world"
三、slice()
slice()方法返回从指定索引开始(包括起始索引)到指定索引结束(不包括结束索引)的子字符串。
let str = "hello world"; let subStr = str.slice(6, 11); console.log(subStr); // 输出"world"
需要注意的是:如果第一个参数是负数,表示从字符串结尾开始计算。如果第二个参数是负数,则表示从倒数第n个字符截取。
let str = "hello world"; let subStr = str.slice(-5); console.log(subStr); // 输出"world"
四、split()
split()方法把字符串分割成字符串数组。
let str = "hello world"; let subStrArr = str.split(" "); console.log(subStrArr); // 输出["hello", "world"]
也可以使用正则表达式作为参数分割字符串。
let str = "hello world"; let subStrArr = str.split(/s+/); console.log(subStrArr); // 输出["hello", "world"]
五、replace()
replace()方法返回一个由替换值(replacement)替换一些或所有匹配的模式(pattern)后的新字符串。模式可以是一个字符串或者一个正则表达式。
let str = "hello world"; let newStr = str.replace("world", "javascript"); console.log(newStr); // 输出"hello javascript"
可以使用正则表达式作为模式,同时支持全局匹配(g)和忽略大小写匹配(i)。
let str = "hello world"; let newStr = str.replace(/world/gi, "javascript"); console.log(newStr); // 输出"hello javascript"
六、charAt()
charAt()方法返回指定位置的字符。
let str = "hello world"; let char = str.charAt(6); console.log(char); // 输出"w"
七、charCodeAt()
charCodeAt()方法返回指定位置字符的 Unicode 编码。
let str = "hello world"; let uniCode = str.charCodeAt(6); console.log(uniCode); // 输出"119"
八、总结
以上是JS中常见的字符串切割方法,每种方法都有各自的特点和使用场景,根据实际需求选择合适的方法能够提高开发效率。代码示例也能够帮助我们更好的理解和使用。