字符串的创建
1.字面量的形式创建字符串
例: var str = 'abc'
2.内置构造函数的形式创建字符串
例: var str1 = new String()
console.log(str1)
var str2 = new String('qwer')
console.log(str2)
字符串的length与索引(下标)
length: 长度
索引(下标):获取字符串指定位置的值
* 注:字符串中通过索引能够获取到指定位置的值,只不过获取到的值是 只读的,只能看不能修改
字符串的常用方法
1.charAt
语法:字符串.charAt(索引)
作用:查询指定下标的值
返回值:查询到的值,如果没查询到,则会返回一个 空字符串
例:var str = 'qwer'
var str1 = str.charAt(1)
console.log(str1) //w
var str2 = str.charAt(10)
console.log(str2) //返回一个 空字符串
2.charCodeAt
语法:字符串.charCodeAt(索引)
作用:查询指定下标值 对应的 十进制码
返回值:查询到值 对应的十进制码,如果没查询到,则会返回一个NaN
例:var str = 'abcd'
var str1 = str.charCodeAt(0)
console.log(str1) //97
var str2 = str.charCodeAt(10)
console.log(str) //NaN
3.toLowerCase (常用)
语法:字符串.toLowerCase
作用:将这个字符串内所有的内容转换为小写
返回值:转换后的字符串
例:var str1 = 'zxcASDqwer'
var str2 = 'PLMOKNIJB'
var str3 = 'vbnghjtyr'
console.log(str1.toLowerCase()) //zxcasdqwer
console.log(str2.toLowerCase()) //plmoknijb
console.log(str3.toLowerCase()) //vbnghjtyr
4.toUpperCase (常用)
语法:字符串.toUpperCase
作用:将这个字符串内所有的内容转换为大写
返回值:转换后的字符串
例:var str1 = 'zxcASDqwer'
var str2 = 'PLMOKNIJB'
var str3 = 'vbnghjtyr'
console.log(str1.toUpperCase()) //ZXCASDQWER
console.log(str2.toUpperCase()) //PLMOKNIJB
console.log(str3.toUpperCase()) //VBNGHJTYR
5.substr (尽量不用)
语法:字符串.substr(开始索引, 多少个)
作用:截取指定的字符串
返回值:截取到的字符串
* 注:mdn 说明此语法将来某一天可能会删除, 建议使用 substring
6.substring
语法:字符串.substring(开始索引, 结束索引)
作用:截取指定的字符串
返回值:截取到的字符串
* 注:
(1).参数包前不包后
(2).结束索引可以不写,相当于写了 length
例:var str = 'zhangzengzeng'
var str1 = str.substring(0, 5)
console.log(str1) //zhang
7.slice
语法:字符串.slice(开始索引, 结束索引)
作用:截取指定的字符串
返回值:截取到的字符串
* 注:
(1).参数包前不包后
(2).结束索引可以不写,相当于写了 length
(3).开始索引也可以不写,相当于写了 0
(4).结束索引支持写负数, 相当于 length + 负数,也就是相当于结束索引为倒数第几个
例:var str = 'zhangzengzeng'
var str1 = str.slice(2, 6)
console.log(str1) //angz
var str2 = str.slice(0, -4)
console.log(str2) //zhangzeng
8.concat
语法:字符串.concat(数据1, 数据2, 数据3, ......)
作用:将字符串和 参数传递的数据 进行拼接
返回值:拼接后的字符串
例:var str = 'qwer'
var str1 = str.concat('c', 'g', '$')
console.log(str1) //qwercg$
9.indexOf
语法:字符串.indexOf(数据, 开始下标)
作用:寻找数据在字符串中的位置
返回值:找到的时候返回下标,找不到返回-1
* 注:第二个参数可以不传递,默认为 0
例:var str = 'qwer'
var str1 = str.indexOf('w', 2)
console.log(str1) //-1
var str2 = str.indexOf('x')
console.log(str2) //-1
var str3 = str.indexOf('e', 1)
console.log(str3) //2
10.lastIndexOf
语法:字符串.lastIndexOf(数据, 开始下标)
作用:寻找数据在字符串中的位置(从后往前/从右往左)
返回值:找到时返回下标,找不到返回-1
* 注:第二个参数可以不写, 默认是length - 1
例:var str = 'qwert'
var str1 = str.lastIndexOf('e', 1)
console.log(str1) //-1
var str2 = str.lastIndexOf('e')
console.log(str2) //2
11.split
语法:字符串.split('符号')
作用:在字符串中找到 '符号' 然后将这个字符串分隔开,并放在一个数组内
返回值:一个数组
* 注:参数如果传递的是 空字符串('')会将这个字符串全部分隔开
例:var str = 'qwer, tyui, asdf, zxcv'
var str1 = str.split(',') //通过 逗号, 将字符串 str 分隔到一个数组中
console.log(str1) //['qwer', ' tyui', ' asdf', ' zxcv']
var str2 = str.split('t') //通过 t 将字符串 str 分隔到一个数组中
console.log(str2) //['qwer, ', 'yui, asdf, zxcv']
var str3 = str.split(' ') //通过 空格 将字符串 str 分隔到一个数组中
console.log(str3) // ['qwer,', 'tyui,', 'asdf,', 'zxcv']
var str4 = str.split('')
//通过 空字符串 会将整个字符串全部分割开,放在一个数组中
console.log(str4)
// ['q', 'w', 'e', 'r', ',', ' ', 't', 'y', 'u', 'i', ',', ' ', 'a', 's', 'd', 'f', ',', ' ', 'z', 'x', 'c', 'v']
字符串去除空格的方法
1.trim
语法:字符串.trim()
作用:去掉字符串两侧的空格
返回值:去掉空格后的字符串
例:var str = ' a b c '
var str1 = str.trim()
console.log(str1) //'a b c'
2.trimStart / trimLeft
语法:字符串.trimStart() / 字符串.trimLeft()
作用:去掉字符串开始(左侧)的空格
返回值:去掉左侧空格后的字符串
例:var str = ' a b c '
var str1 = str.trimStart()
console.log(str1) //'a b c '
3.trimEnd / trimRight
语法:字符串.trimEnd() / 字符串.trimRight()
作用:去掉字符串结束(右侧)的空格
返回值:去掉右侧空格后的字符串
例:var str = ' a b c '
var str1 = str.trimEnd()
console.log(str1) //' a b c'
字符串相关的判断方法
1.includes
语法:字符串.includes(字符串片段)
作用:判断 当前字符串中,是否拥有指定字符串片段
返回值:一个布尔值
true -> 拥有
false -> 没有
例:var str = 'qwertyuiop'
var str1 = str.includes('rtyu')
console.log(str1)
var str2 = str.includes('zxcvbv')
console.log(str2)
2.startWith
语法:字符串.startWith(字符串片段)
作用:判断 字符串 开头 是不是指定的 字符串片段
返回值: 一个布尔值
true -> 是开头
false -> 不是开头
例:var str = 'qwertyuiop'
var str1 = str.startWith('qwe')
console.log(str1)
var str2 = str.startWith('q')
console.log(str2)
3.endsWith
语法:字符串.endsWith(字符串片段)
作用:判断 字符串结尾 是不是指定的 字符串片段
返回值:一个布尔值
true ->是结尾
false ->不是结尾
4.replace
语法:字符串.replace('要被替换的字符', '替换的字符')
作用:找到当前字符串中的第一个参数对应的值,然后将其替换成第二个参数
返回值:替换完成的字符串
例:var str = 'abcdefgh'
var str1 = str.replace('abc','@@!$#')
console.log(str1)
var str2 = str.replace('qwe','#@$&')
console.log(str)