一、使用
字符串可以使用单引号或双引号,单引号里可以嵌套双引号,双引号里也可以嵌套单引号,但是单引号和双引号都不能嵌套和使用自己
let w1 = " i'm a student." // true
let w2 = " he say:' today is a nice day'. " // true
let w3 = ' she say : " Can i help you? " ' // true
let w4 = " he say: " today is a nice day". " // false
let w5 = ' she say: ' Can i help you? ' ' // false
字符串中的特殊字符都可以用 \ 进行转义
let w = ' i\'m a student.' // true
字符串可以直接用索引对字符进行访问
let w = ‘hello world’
w[1] // e
二、常用方法
- charAt(index)
- 参数:
index:指定的位置,类型为number
返回类型:string
描述:返回指定位置的字符
- indexOf(searchvalue,start)
- 参数:
searchvalue:指定搜索的字符串,类型为string
start:指定开始搜索的位置,默认值为0,类型为number
返回类型:number
描述:返回指定的字符串值在字符串中首次出现的位置,没有找到则返回-1
- lastIndexOf(searchvalue,start)
- 参数:
searchvalue:指定搜索的字符串,类型为string
start:指定开始搜索的位置,默认值为0,类型为number
返回类型:number
描述:返回指定的字符串值在字符串中最后出现的位置,没有找到则返回-1
- includes(searchvalue, start)
- 参数:
searchvalue:指定搜索的字符串,类型为string
start:指定开始搜索的位置,默认值为0,类型为number
- 返回类型:boolean
- 描述:于判断字符串是否包含指定的子字符串
- match(regexp)
- 参数描述:
regexp:如果该值是一个字符串,则将它作为要检索的直接量文本模式,而不是首先被转换为 RegExp对象。类型为字符串或正则表达式
- 返回类型:array
- 描述:用于判断字符串是否包含指定的子字符串
- 注意: match()方法将检索字符串 String Object,以找到一个或多个与 regexp 匹配的文本。这个方法的行为决定于 regexp 是否具有标志g。如果 regexp 没有标志 g,那么 match() 方法就只能在 stringObject中执行一次匹配,返回第一个符合正则的字符串和该字符串所在的父字符串;如果 regexp 有标志g,它将返回一个数组,其中存放了该字符串中所有符合正则的子字符串。如果没有找到任何匹配的文本, match() 将返回null。
- replace(searchvalue,newvalue)
- 参数描述:
searchvalue:如果该值是一个字符串,则将它作为要检索的直接量文本模式,而不是首先被转换为 RegExp对象。类型为字符串或正则表达式
newvalue:指定的替换文本或生成替换文本的函数。类型可以为字符串或函数
- 返回类型:string(一个新的字符串,是用 replacement 替换了 regexp 的第一次匹配或所有匹配之后得到的。)
- 描述:在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串
- 注意: replace() 方法将检索字符串String Object,以找到一个或多个与 regexp 匹配的文本进行替换。这个方法的行为决定于 regexp 是否具有标志g。如果 regexp 没有标志 g,那么 replace() 方法就只能在 stringObject中执行一次匹配,替换第一个符合正则的子字符串;如果 regexp 有标志g,它将替换所有符合正则的字符串。无论哪个行为,replace()都会返回新的字符串。如果没有找到任何匹配的文本,将返回原来的字符串。**
- slice(start,end)
- 参数描述:
start:要抽取的片断的起始下标。第一个字符位置为 0,最后一个字符为-1,类型为number’,
end:截取的片段结尾的下标。若未指定此参数,则要提取的子串包括 start到原字符串结尾的字符串。如果该参数是负数,那么它规定的是从字符串的尾部开始算起的位置。
- 返回类型:string
- 描述:返回一个由start 和 end 参数指定在字符串提取的新的字符串,不包括在结束下标的字符
- 注意:如果像发生 start 和end 都是负数,且start > end 时,例如:someStr.slice(-1, -5), 会返回空字符串。
- split(separator,limit)
- 参数描述:
separator:从该参数指定的地方分割 string Object,类型为字符串或正则表达式
limit:该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。
- 返回类型:array 描述:返回一个由指定的separator分隔的数组
- 注意: 如果把空字符串 ("") 用作separator,那么 stringObject 中的每个字符之间都会被分割。split() 方法不改变原始字符串。
- trim()
- 返回类型:string
- 描述:返回新的去除头尾空格的字符串
三、其他方法
- search(searchvalue):类似indexOf,支持正则
- startsWith(searchvalue, start),endsWith(searchvalue, end)
- substr(start,length):类似slice,但不是ES标准
- substring(from, to):指定个数不是位置
- concat(string1, string2, …, stringX):连接多个字符串
- repeat():复制字符串指定次数,并将它们连接在一起返回
- toLowerCase()、toUpperCase()
- charCodeAt(index):返回在指定的位置的字符的 Unicode 编码。
- String.fromCharCode(n1, n2, …, nX):将 Unicode 编码转为字符
四、参考资料
JavaScript参考手册: https://www.runoob.com/jsref/jsref-charcodeat.html