1.根据字符返回位置
字符串所有的方法,都不会修改字符串本身(字符串是不可变的),操作完成后会返回一个新的字符串。
方法名 | 说明 |
indexOf(‘要查找的字符串’,[开始的位置]) | 返回指定内容在原字符串中的位置,如果找不到就返回-1,开始的位置是index索引号 |
lastIndexOf() | 从后往前找,只找第一个匹配的 |
2.面试题
查找字符串’abcoefoxyozzopp‘中所有o出现的位置以及次数
var str = 'abcoefoxyozzopp';
var index = str.indexOf('o');
var num = 0;
while(index !== -1){
console.log(index);
num++;
index = str.indexOf('o',index+1);
}
console.log('o出现的次数是'+num);
3.根据位置返回字符(重点)
方法名 | 说明 | 使用 |
charAt(index) | 返回指定位置的字符(index 字符串的索引号) | str.charAt(0) |
charCodeAt(index) | 获得指定位置处字符的ASCII码(index索引号) | str.charCodeAt(0) |
str[index] | 获取指定位置处字符 | HTML5,IE8+Z支持和查rAt()等效 |
// 遍历所有字符
var str = 'andy';
for(var i = 0; i < str.length; i++){
console.log(str.charAt(i));
}
// 输出 a n d y
4.案例
判断一个字符串‘abcoefoxyozzopp’中出现系数最多的字符,并统计其次数
1)核心算法:利用charAt()遍历这个字符串;
2)把每个字符都存储给对象,如果没有该属性,就为1,如果存在就+1;
// abcoefoxyozzopp