ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

JavaScript——字符串

2022-07-11 21:10:25  阅读:137  来源: 互联网

标签:index obj log JavaScript let str 字符串 console


一、根据字符返回位置

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';

  1. 调用str.charAt()方法,传入的值为索引号(从0开始),返回的值为字符
  2. str[index],index为数组索引号
  3. str.charcodeAt()方法,传入的值为索引号,返回的值为ACSII值

四、字符串操作(连接、截取、替换)

  1. 连接字符串,调用.concat()方法,传入的值为要拼接的字符串,还有一种方法为+号
  2. 截取字符串,调用.substr()方法,,传入的第一个值为截取的起始位置,传入的第二个值为截取的长度
  3. 替换字符串,调用.replace()方法,传入的第一个值为被替换的字符,传入的第二个值为想要替换成的新字符
  4. 字符转数组,调用.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);

 

标签:index,obj,log,JavaScript,let,str,字符串,console
来源: https://www.cnblogs.com/dapangblog/p/16467833.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有