JavaScript String(字符串)方法总结
字符串的作用:
用于存储和处理文本,可以存储一系列字符
字符串的创建:
1. 通过String构造函数
var str = new String('abc') //创建一个字符串对象
2. 通过String创建
var str = String('abc') //创建一个字符串
3. 通过字面量表达式
var str = '' //创建一个空字符串
var str = 'abc' //创建一个字符串
字符串方法:
length 属性用于计算字符串的长度
返回值: 字符串的长度
var str = 'abc'
var l = str.length
console.log(l) //3
charAt() 方法可返回指定位置的字符
参数: string.charAt(index)
-
index: 必需,表示字符串中某个位置的数字,即字符在字符串中的下标
返回值: 返回指定位置的字符
var str = 'abc'
var s = str.charAt(1)
console.log(s) //'b'
console.log(str) //'abc'(原字符串不变)
charCodeAt() 方法可返回指定位置的字符的 Unicode 编码
参数: string.charCodeAt(index)
-
index: 必需,表示字符串中某个位置的数字,即字符在字符串中的下标
返回值: 返回在指定的位置的字符的 Unicode 编码
var str = 'abc'
var u = str.charCodeAt(1)
console.log(u) //98
console.log(str) //'abc'(原字符串不变)
concat() 方法用于连接两个或多个字符串
参数: string.concat(string1, string2, …, stringX)
-
string1, string2, …, stringX: 必需,将被连接为一个字符串的一个或多个字符串对象
返回值: 返回两个或多个字符串连接后生成的新字符串
var str1 = 'abc'
var str2 = 'def'
var str3 = str1.concat(str2)
console.log(str3) //'abcdef'
console.log(str1) //'abc'(原字符串不变)
console.log(str2) //'def'(原字符串不变)
fromCharCode() 可接受一个指定的 Unicode 值,然后返回一个字符串
参数: String.fromCharCode(n1, n2, …, nX)
-
n1, n2, …, nX: 必需,一个或多个 Unicode 值,即要创建的字符串中的字符的 Unicode 编码
返回值: 返回代表 Unicode 编码的字符
var str = String.fromCharCode(97, 98, 99)
console.log(str) //'abc'
indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置,从该字符串的前面向后查找
参数: string.indexOf(searchvalue, start)
-
searchvalue: 必需,规定需查找的字符串值 -
start: 可选,整数参数,规定在字符串中开始查找的位置。它的合法取值是 0 到 string Object.length – 1。如省略该参数,则将从字符串的首字符开始查找
返回值: 返回查找指定字符串第一次出现的位置,如果没找到匹配的字符串则返回 -1
var str = 'abbc'
var n = str.indexOf('b')
console.log(n) //1
console.log(str) //'abbc'(原字符串不变)
var str = 'abbc'
var n = str.indexOf('a', 1)
console.log(n) //-1
console.log(str) //'abbc'(原字符串不变)
lastIndexOf() 方法可返回一个指定的字符串值最后出现的位置,如果指定第二个参数 start,则在一个字符串中的指定位置从后向前查找
参数: string.lastIndexOf(searchvalue, start)
-
searchvalue: 必需,规定需查找的字符串值 -
start: 可选,整数参数,规定在字符串中开始查找的位置。它的合法取值是 0 到 stringObject.length – 1。如省略该参数,则将从字符串的最后一个字符处开始查找
返回值: 返回查找的字符串最后出现的位置,如果没有找到匹配字符串则返回 -1
var str = 'abbc'
var n = str.lastIndexOf('b')
console.log(n) //2
console.log(str) //'abbc'(原字符串不变)
var str = 'abbc'
var n = str.lastIndexOf('c', 2)
console.log(n) //-1
console.log(str) //'abbc'(原字符串不变)
includes() 方法用于判断字符串是否包含指定的子字符串
参数: string.includes(searchvalue, start)
-
searchvalue: 必需,要查找的字符串 -
start: 可选,设置从那个位置开始查找,默认为 0
返回值: 如果找到匹配的字符串返回 true,否则返回 false
var str = 'abc'
var b = str.includes('b')
console.log(b) //true
console.log(str) //'abc'(原字符串不变)
var str = 'abc'
var b = str.includes('b', 2)
console.log(b) //false
console.log(str) //'abc'(原字符串不变)
match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配
参数: string.match(regexp)
-
regexp: 必需,规定要匹配的模式的 RegExp 对象。如果该参数不是 RegExp 对象,则需要首先把它传递给 RegExp 构造函数,将其转换为 RegExp 对象
返回值: 返回存放匹配结果的数组。该数组的内容依赖于 regexp 是否具有全局标志 g。如果没找到匹配结果返回 null
var str = 'abc'
var arr = str.match(/[a-b]/g)
console.log(arr) //['a', 'b']
console.log(str) //'abc'(原字符串不变)
repeat() 方法用于字符串复制指定次数
参数: string.repeat(count)
-
count: 必需,设置要复制的次数
返回值: 返回复制指定次数并连接在一起的字符串
var str1 = 'abc'
var str2 = str1.repeat(2)
console.log(str2) //'abcabc'
console.log(str1) //'abc'(原字符串不变)
replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串
参数: string.replace(searchvalue, newvalue)
-
searchvalue: 必需,规定子字符串或要替换的模式的 RegExp 对象。请注意,如果该值是一个字符串,则将它作为要检索的直接量文本模式,而不是首先被转换为 RegExp 对象 -
newvalue: 必需,一个字符串值,规定了替换文本或生成替换文本的函数
返回值: 返回一个新的字符串,是用 replacement 替换了 regexp 的第一次匹配或所有匹配之后得到的
var str1 = 'abc'
var str2 = str1.replace(/[a-b]/g, 'd')
console.log(str2) //'ddc'
console.log(str1) //'abc'(原字符串不变)
var str1 = 'abc'
var str2 = str1.replace('c', 'd')
console.log(str2) //'abd'
console.log(str1) //'abc'(原字符串不变)
search() 方法用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串
参数: string.search(searchvalue)
-
searchvalue: 必需,查找的字符串或者正则表达式
返回值: 返回与指定查找的字符串或者正则表达式相匹配的 String 对象起始位置,如果没有找到任何匹配的子串,则返回 -1
var str = 'abc'
var n = str.search('c')
console.log(n) //2
console.log(str) //'abc'(原字符串不变)
var str = 'abc'
var n = str.search(/[a-b]/g)
console.log(n) //0
console.log(str) //'abc'(原字符串不变)
var str = 'abc'
var n = str.search('d')
console.log(n) //-1
console.log(str) //'abc'(原字符串不变)
slice() 方法可提取字符串的某个部分
参数: string.slice(start, end)
-
start: 必需,要抽取的片断的起始下标。第一个字符位置为 0 -
end: 可选,紧接着要截取的片段结尾的下标。若未指定此参数,则要提取的子串包括 start 到原字符串结尾的字符串。如果该参数是负数,那么它规定的是从字符串的尾部开始算起的位置
返回值: 返回被提取部分的字符串
var str1 = 'abc'
var str2 = str1.slice(1)
console.log(str2) //'bc'
console.log(str1) //'abc'(原字符串不变)
var str1 = 'abc'
var str2 = str1.slice(0, 1)
console.log(str2) //'a'
console.log(str1) //'abc'(原字符串不变)
split() 方法用于把一个字符串分割成字符串数组
参数: string.split(separator, limit)
-
separator: 可选,字符串或正则表达式,从该参数指定的地方分割 string Object -
limit:: 可选,该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度
返回值: 返回元素在数组中的位置,如果没有搜索到则返回 -1
var str = 'abc'
var arr = str.split()
console.log(arr) //['abc']
console.log(str) //'abc'(原字符串不变)
var str = 'abc'
var arr = str.split('')
console.log(arr) //['a', 'b', 'c']
console.log(str) //'abc'(原字符串不变)
var str = 'abc'
var arr = str.split('', 2)
console.log(arr) //['a', 'b']
console.log(str) //'abc'(原字符串不变)
startsWith() 方法用于检测字符串是否以指定的子字符串开始,对大小写敏感
参数: string.startsWith(searchvalue, start)
-
searchvalue: 必需,要查找的字符串 -
start: 可选,查找的开始位置,默认为 0
返回值: 如果字符串是以指定的子字符串开头返回 true,否则 false
var str = 'abc'
var b = str.startsWith('a')
console.log(b) //true
console.log(str) //'abc'(原字符串不变)
var str = 'abc'
var b = str.startsWith('b', 1)
console.log(b) //true
console.log(str) //'abc'(原字符串不变)
substr() 方法可在字符串中抽取从“开始下标”开始的指定数目的字符
参数: string.substr(start, length)
-
start: 必需,要抽取的子串的起始下标。必须是数值。如果是负数,那么该参数声明从字符串的尾部开始算起的位置。也就是说,-1 指字符串中最后一个字符,-2 指倒数第二个字符,以此类推 -
length: 可选,子串中的字符数。必须是数值。如果省略了该参数,那么返回从 stringObject 的开始位置到结尾的字串
返回值: 返回包含文本提取部分的新字符串
var str1 = 'abc'
var str2 = str1.substr(1)
console.log(str2) //'bc'
console.log(str1) //'abc'(原字符串不变)
var str1 = 'abc'
var str2 = str1.substr(1, 1)
console.log(str2) //'b'
console.log(str1) //'abc'(原字符串不变)
substring() 方法用于提取字符串中介于两个指定下标之间的字符
参数: string.substring(from, to)
-
from: 必需,一个非负的整数,规定要提取的子串的第一个字符在 string Object 中的位置 -
to: 可选,一个非负的整数,比要提取的子串的最后一个字符在 string Object 中的位置多 1。如果省略该参数,那么返回的子串会一直到字符串的结尾
返回值: 返回包含文本提取部分的新字符串,包括“开始”处的字符,但不包括“结束”处的字符
var str1 = 'abc'
var str2 = str1.substring(1)
console.log(str2) //'bc'
console.log(str1) //'abc'(原字符串不变)
var str1 = 'abc'
var str2 = str1.substring(1, 2)
console.log(str2) //'b'
console.log(str1) //'abc'(原字符串不变)
trim() 方法用于删除字符串的头尾空格
返回值: 返回移除头尾空格的字符串
var str1 = ' abc '
var str2 = str1.trim()
console.log(str2) //'abc'
console.log(str1) //' abc '(原字符串不变)
toLowerCase() 方法用于把字符串转换为小写
返回值: 返回转换为小写的字符串
var str1 = 'ABC'
var str2 = str1.toLowerCase()
console.log(str2) //'abc'
console.log(str1) //'ABC'(原字符串不变)
toUpperCase() 方法用于把字符串转换为大写
返回值: 返回转换为大写的字符串
var str1 = 'abc'
var str2 = str1.toUpperCase()
console.log(str2) //'ABC'
console.log(str1) //'abc'(原字符串不变)
toLocaleLowerCase() 方法根据本地主机的语言环境把字符串转换为小写
通常,该方法与 toLowerCase() 方法返回的结果相同,只有几种语言(如土耳其语)具有地方特有的大小写映射返回值: 返回根据本地语言转换为小写的字符串
var str1 = 'ABC'
var str2 = str1.toLocaleLowerCase()
console.log(str2) //'abc'
console.log(str1) //'ABC'(原字符串不变)
toLocaleUpperCase() 方法根据本地主机的语言环境把字符串转换为大写
通常,该方法与 toUpperCase() 方法返回的结果相同,只有几种语言(如土耳其语)具有地方特有的大小写映射返回值: 返回根据本地语言转换为大写的字符串
var str1 = 'abc'
var str2 = str1.toLocaleUpperCase()
console.log(str2) //'ABC'
console.log(str1) //'abc'(原字符串不变)
原文始发于微信公众号(前端24):JavaScript String(字符串)方法总结
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/217215.html