一、根据字符返回位置
1 let str = 'abcdefga';
2 console.log(str.indexOf('a'));//0
3 console.log(str.indexOf('a', 3));//7
二、查找字符串中某个字符出现的位置以及次数
当indexof返回的数值是-1,表明不存在,即是出现的新的数组元素。
1 let str = "abcdefabcd";
2 let index = str.indexOf('a');
3 let num = 0;
4 // console.log(index);
5 while (index !== -1) {
6 console.log(index);
7 num++;
8 index = str.indexOf('a', index + 1);
9 }
10 console.log('a出现的次数是: ' + num);//0 6
三、根据位置返回字符
定义一个字符串let str=’abcd’;
- 调用str.charAt()方法,传入的值为索引号(从0开始),返回的值为字符
- str[index],index为数组索引号
- str.charcodeAt()方法,传入的值为索引号,返回的值为ACSII值
四、字符串操作(连接、截取、替换)
- 连接字符串,调用.concat()方法,传入的值为要拼接的字符串,还有一种方法为+号
- 截取字符串,调用.substr()方法,,传入的第一个值为截取的起始位置,传入的第二个值为截取的长度
- 替换字符串,调用.replace()方法,传入的第一个值为被替换的字符,传入的第二个值为想要替换成的新字符
- 字符转数组,调用.split()方法,传入的值为分隔符
五、统计出现最多的字符和次数
利用对象的属性方法,检测,若没有,属性=1,若有,进行属性累+1
1 // 统计出现次数
2 let str = 'abcdefga';
3 let obj = {};
4 for (let i = 0; i < str.length; i++) {
5 let chars = str.charAt(i);
6 if (obj[chars]) {
7 obj[chars]++;
8 } else {
9 obj[chars] = 1;
10 }
11 }
12 console.log(obj);
13 let max = 0;
14 // 创建一个变量存放字符
15 let x = '';
16 // k为属性名 obj[k]为属性值
17 for (let i in obj) {
18 if (obj[i] > max) {
19 max = obj[i];
20 x = i;
21 }
22 }
23 console.log(max);
24 console.log('最多的字符是' + x);
原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/tech/webdev/273663.html