length属性
length属性就是指字符串的长度
只可读,不可写
var s = 'string';
s.length; //5
s.length = 3;
s.length; //5
s.length = 7;
s.length; //5
charAt方法
-
作用
通过索引值(index)寻找到对应的字符
-
语法
字符串.charAt(index)
-
返回值
返回取到的字符
返回值数据类型为字符串string
-
参数(index)
index
索引值,字符对应的下标
- 参数范围
0 ~ str.length-1
var s = 'string';
s.charAt(0); //'s'
s.charAt(5); //'g'
- 不设置参数
index默认为0,会返回第一个字符
var s = 'string';
s.charAt(); //'s'
- 参数为负数或者超出范围
返回空字符串''
var s = 'string';
s.charAt(-1) //''
s.charAt(6) //''
typeof s.charAt(-1) //'string'
typeof s.charAt(6) //'string'
charCodeAt()方法
-
作用
通过索引值(index)寻找到对应的字符,然后将其转化为Unicode编码
-
语法
字符串.charCodeAt(index)
-
返回值
返回取到的字符的Unicode编码
返回值数据类型为数字number
-
参数(index)
- 参数范围
0 ~ str.length-1
var s = 'string';
s.charCodeAt(0); //115
s.charCodeAt(5); //103
- 不设置参数
index默认为0,会返回第一个字符的Unicode编码
var s = 'string';
s.charCodeAt(); //115
- 参数为负数或者超出范围
返回NaN
var s = 'string';
s.charCodeAt(-1) //NaN
s.charCodeAt(6) //NaN
indexOf()、lastIndexOf()方法
-
作用
通过给定字符来寻找其对应的索引值
通过给定字符来寻找其在字符串中的位置
-
机制
indexOf()
从字符串的头部开始查找(从左到右) (即向后匹配)
返回字符串中能匹配到的第一个字符对应的索引值(下标值)
如果有重复,后面重复的内容不予考虑
lastIndexOf()
从字符串的尾部开始查找(从右到左) (即向前匹配)
返回字符串中能匹配到的最后一个字符对应的索引值(下标值)
如果有重复,后面重复的内容不予考虑
-
语法
字符串.indexOf(searchValue,fromIndex)
字符串.lastIndexOf(searchValue,fromIndex)
-
返回值
返回字符在整个字符串里对应的索引值(下标值)
返回值数据类型为数字number
-
参数
有两个参数
searchValue
需要查找的字符
fromIndex
从该位置开始查找(包含该位置对应的字符),如果不设置参数,则默认值为0
indexOf()
从该位置开始向后匹配
lastIndexOf()
从该位置开始向前匹配
- 正常用法
var s = 'string';
s.indexOf('s',5) //6 从索引值为5的字符开始向后匹配
s.lastindexOf('s',5) //0 从索引值为5的字符开始向前匹配
- 只设置
searchValue
,不设置fromIndex
此时fromIndex
的默认值为0
var s = 'string';
s.indexOf('s') //0
s.lastindexOf('s') //6
- 参数设置的字符不包含在字符串内
此时找不到该字符,返回-1
var s = 'stringstring';
s.indexOf('a') //-1 字符串内找不到'a',返回-1
s.lastIndexOf('a') //-1 字符串内找不到'a',返回-1
split()方法
-
作用
通过指定分隔符把字符串分隔成数组
-
语法
字符串.split()
-
返回值
返回分割后的数组