字符串的操作方式
一:转为字符串
1. value + toString()
2. String(value)
3. value + " "
区别: null和undefined没有toString()方法,在不知道value是否为这两个值是可用String(value)或value+ "",
二:操作方式
1.chartAt(index) charCodeAt(index)
接受一个参数index,chartAt返回指定位置的字符 charCodeAt返回指定位置的字符的 Unicode 编码。这个返回值是 0 - 65535 之间的整数。
字符串中第一个字符的下标是 0。如果 index 是负数,或大于等于字符串的长度 chartAt()返回空、charCodeAt()返回NaN
var str="hello world"; console.log(str.charAt(1));//e console.log(str.charCodeAt(1));//101 //还可以使用方括号加数字索引来访问字符串中特定的字符 console.log(str[1]);//e
2. substr() subString() slice()
字符串中第一个字符的下标是0 返回新字符串
substr(start,length) 参数指定的是子串的开始位置和长度 包含开始位置 如果没有length返回的字符串包含从 start 到 stringObject 的结尾的字符。
start可接受负数 从字符串的尾部开始算起的位置。也就是说,-1 指字符串中最后一个字符,-2 指倒数第二个字符,以此类推
subString(start,stop) 参数指定的是字串的开始位置和结束位置 包括 start 处的字符,但不包括 stop 处的字符 如果没有length返回的字符串包含从 start 到 stringObject 的结尾的字符。
slice(start,stop) 参数指定的是字串的开始位置和结束位置 包括 start 处的字符,但不包括 stop 处的字符 如果没有length返回的字符串包含从 start 到 stringObject 的结尾的字符。
start可接受负数 从字符串的尾部开始算起的位置。也就是说,-1 指字符串中最后一个字符,-2 指倒数第二个字符,以此类推; stop可接受负数 那么它规定的是从数组尾部开始算起的元素
var str="hello world"; console.log(str.substr(3));//lo world console.log(str.substring(3));//lo world console.log(str.slice(3));//lo world console.log(str.substr(3,7));//lo worl 7表示返回7个字符 console.log(str.substring(3,7));//lo w console.log(str.slice(3,7));//lo w 7表示子字符串最后一个字符后面的位置 简单理解就是包含头不包含尾 console.log(str.substr(3,-4));//""空字符串 console.log(str.substring(3,-4));//hel 会转换为console.log(str.substring(3,0)); //此外由于这个方法会将较小数作为开始位置,较大数作为结束位置,所以相当于调console.log(str.substring(0,3)); console.log(str.slice(3,-4));//lo w -4+11=7表示子字符串最后一个字符后面的位置 简单理解就是包含头不包含尾
3.toLowerCase() toUpperCase()
返回新字符串 toLowerCase方法用于把字符串转换为小写。toUpperCase方法用于把字符串转换为大写。
4.trim()
方法用于删除字符串的头尾空格 不会改变原字符串
5.indexOf() lastIndexOf()
indexOf(),参数为子字符串,从左至右查找,返回子字符串位置,如果没找到该子字符串,返回-1。
lastIndexOf(),参数为子字符串,从右至左查找,返回子字符串位置,如果没找到该子字符串,返回-1。
这两个方法接受可选的第二个参数(整数),表示从该位置开始搜索。
var str="hello tino"; str.indexOf("o") //4 str.lastIndexOf("o") //9 lastIndexOf()方法虽然是从后往前搜索,但返回的位置是从前开始数数和计算的