JS字符串复习相关使用

博客主要围绕字符串相关操作展开,包含指定字符查询,查询一个字符在字符串中出现的位置和次数,以及统计字符串中出现次数最多的字符,这些内容常出现在面试题中。

1.字符串的指定字符查询

//字符查询--index
var str = 'dfsdfgsggdfddfasasgdfghghjfhm';
console.log(str.indexOf('d'));
console.log(str.indexOf('d',6));

2.查询一个字符在字符串中出现的位置和次数(面试题中经常出现

var str = 'wewrdsfrgdsardgs';//s出现位置和次数
 function getS(str, s) {
     var indexlist = [];
     var index = str.indexOf(s);
     while (index != -1) {
         indexlist.push(index);
         index = str.indexOf(s, index + 1);
     }
     return indexlist;
 }
 var list = getS(str, 's');
 console.log(list);
 console.log('s出现的次数:' + list.length);

3.字符串统计字符中出现次数最多的字符(面试题中经常出现

var str = 'wewrddsfrgdsardgs';
    //获取每个字符串出现的个数
    function getSmax(str) {
        var obj = {};
        for (var i = 0; i < str.length; i++) {
            var char1 = str.charAt(i);
            if (obj[char1]) {
                obj[char1]++;
            } else {
                obj[char1] = 1;
            }
        }
        return obj;
    }
    console.log(getSmax(str));
    //获取出现最多的字符
    var objStr = getSmax(str);
    var max = 0;
    var s = '';
    for (var k in objStr) {
        if (objStr[k] > max) {
            max = objStr[k];
            s = k;
        }
    }
    console.log('出现最多的字符是:' + s + ';出现的次数是:' + max);

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值