1. indexOf()
返回某个指定的字符串值在字符串中首次出现的位置
var str = 'I Love You'
var str1 = str.indexOf('o')
var str2 = str.indexOf('love')
var str3 = str.indexOf('o', str1 + 1)
console.log(str1) // 3
console.log(str2) // -1 没有找到
console.log(str3) // 8
- 注意:
1.indexOf()
方法对大小写敏感
2.如果要检索的字符串值没有出现,则该方法返回 -1
3.第二个参数规定开始检索的位置,如果此参数省略,将从起始位置(下标0)开始检索
2.lastIndexOf()
返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索
var str = 'I Love You'
var str1 = str.lastIndexOf('o')
var str2 = str.lastIndexOf('love')
var str3 = str.lastIndexOf('o', str1 - 1)
console.log(str1) // 8
console.log(str2) // -1 没有找到
console.log(str3) // 3
- 注意:
1.lastIndexOf()
方法对大小写敏感
2.如果要检索的字符串值没有出现,则该方法返回 -1
3.第二个参数规定开始检索的位置,如省略该参数,则将从字符串的最后一个字符处开始检索
3.substring()
用于提取字符串中介于两个指定下标之间的字符
var str = 'I Love You'
var str1 = str.substring(2)
var str2 = str.substring(3, 3)
var str3 = str.substring(2, 6)
console.log(str1) // Love You
console.log(str2) // 两个参数相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)
console.log(str3) // Love
- 注意:与
slice()
和substr()
方法不同的是,substring()
不接受负的参数
4.substr()
在字符串中抽取从 start 下标开始的指定数目的字符
var str = 'I Love You'
var str1 = str.substr(7)
var str2 = str.substr(7, 1)
var str3 = str.substr(-3, 3) //如果是负数,那么该参数声明从字符串的尾部开始算起的位置
console.log(str1) // You
console.log(str2) // Y
console.log(str3) // You
- 注意:
substr()
的参数指定的是子串的开始位置和长度,因此它可以替代substring()
和slice()
来使用
5.slice()
提取字符串的某个部分,并以新的字符串返回被提取的部分
var str = 'I Love You'
var str1 = str.slice(5) //只有一个参数,则提取开始下标到结尾处的所有字符串
var str2 = str.slice(5, 8) //两个参数,下标5和下标8位置之间的项——但不包括下标8位置的项。
var str3 = str.slice(-8, -4) //参数为负数,-1是最后一个字符。提取从下标-8开始到下标-4但不包含下标-4的字符串。前一个数要小于后一个数,否则返回空字符串
console.log(str1) // e You
console.log(str2) // e Y
console.log(str3) // Love
- 注意:
1.slice()
与substr()
有所不同,因为它用两个字符的位置来指定子串,而substr()
则用字符位置和长度来指定子串
2.String.slice()
与Array.slice()
相似
6.toLowerCase()
用于把字符串转换为小写,返回一个新的字符串
var str = 'I Love You'
var newStr = str.toLowerCase(str)
console.log(newStr) //i love you
7.toUpperCase()
用于把字符串转换为大写,返回一个新的字符串
var str = 'i love you'
var newStr = str.toUpperCase(str)
console.log(newStr) //I LOVE YOU
8.charAt()
返回指定位置的字符
var str = 'I Love You'
var newStr = str.charAt(3)
console.log(newStr) //o
- 注意:字符串中第一个字符的下标是 0。如果参数 index 不在 0 与 string.length 之间,该方法将返回一个空字符串
9.charCodeAt()
返回指定位置的字符的 Unicode 编码,这个返回值是 0 - 65535 之间的整数。
var str = 'I Love You'
var newStr = str.charCodeAt(3)
console.log(newStr) //111
- 注意:字符串中第一个字符的下标是 0。如果 index 是负数,或大于等于字符串的长度,则
charCodeAt()
返回NaN
10.split()
用于把一个字符串分割成字符串数组
var str = 'love you'
var strTwo = '4,6,8,10'
var str1 = str.split('') //如果把空字符串 ('') 用作 separator,那么 stringObject 中的每个字符之间都会被分割
var str2 = str.split(' ') //用空格作为分隔符
var str3 = str.split('', 4) //返回的数组的最大长度
var str4 = strTwo.split(',')
console.log(str1) //["l", "o", "v", "e", " ", "y", "o", "u"]
console.log(str2) //["love", "you"]
console.log(str3) //["l", "o", "v", "e"]
console.log(str4) //["4", "6", "8", "10"]
- 注意:
String.split()
执行的操作与Array.join
执行的操作是相反的
11.replace()
在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串
var str = 'abcdefga'
var str1 = str.replace('a', 'h') //默认只能替换第一个
var str2 = str.replace(/a/g, 'h') //借助正则把所有的a替换成h
console.log(str1) //hbcdefga
console.log(str2) //hbcdefgh
//全部的空格去掉
var str3 = 'Jay Chou'
var newStr = str3.replace(/ /g, '')
console.log(newStr) //JayChou
12.concat()
用于连接两个或多个字符串
var str = 'love '
var str2 = 'you'
var str3 = str.concat(str2)
console.log(str3) //love you
console.log(str + str2)
- 注意:
stringObject.concat()
与Array.concat()
很相似 - 提示:使用 " + " 运算符来进行字符串的连接运算通常会更简便一些
13.match()
可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配
var str = 'love love you'
var reg = /love/gi
var str1 = str.match(reg)
var str2 = str.match('your')
console.log(str1) //["love", "love"]
console.log(str2) //null
- 注意:若没有找到任何匹配的子串,则返回 null
以上就是关于js字符串常用方法小总结啦~ ٩(๑❛ᴗ❛๑)۶ ~