JS 中obj[key]++;的含义?前端开发问题
<script>
    var str3 = "kioojroiaognadknfkgoadirojoajgoeirjoijagwoqkep";
    //创建一个空对象, 目的:把字母作为键,次数作为值
    var obj = { };
    //遍历字符串,获取每个字母
    for (var i = 0; i < str3.length; i++){
        //判断obj这个对象中有没有字母
        var key = str3[i];//每个字母
        if (obj[key]) {//判断obj中有没有这个键
            //对象中有这个字母了
            obj[key]++;
            console.log(obj[key]++);
        } else {
            obj[key] = 1;
        }
    }
    // for (var key in  obj) {
    //     console.log(key + "这个字母出现了" + obj[key] + "次");
    // }

</script>

哪位大佬能帮忙解答一下
obj[key]++;
在上述代码中的含义和功能

4个回答

计数啊...
对象obj中已经有了字幕key, for循环遍历读取到字母key的时候, 就让计数变量obj[key]增加1

qq_41658067
紫殇归来 谢谢您
大约一年之前 回复

如上是对字符串str3中所有字母出现次数进行统计。先是定义了一个空对象,用于存放出现及字母(键)以及该字母出现的次数(值)。然后循环遍历字符串中所有的字母,如果已经在对象obj中存在了,则对应的值加一,即这里的obj[key]++,拆开可以写成obj[key]=obj[key]+1;如果对象obj中不存在该字母的记录,则将该字母加上并赋初值1.

qq_41658067
紫殇归来 谢谢您,讲解的很详细
大约一年之前 回复

如key的值是字符串“a”就等同 obj.a++;

qq_41658067
紫殇归来 已经解决了,谢谢
大约一年之前 回复

用来计算该字母出现的次数用的。如果obj[key]不存在,obj[key]的值为1;如果obj[key]存在,则obj[key]++,也就是进行加1的操作,此时obj[key]值为2了,之后就以此类推。(此外var a = 1;a++; 相当于 var a = 1;a+=1)

qq_41658067
紫殇归来 已经解决了,谢谢您
大约一年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问