记录字符串出现的次数

// 记录字符串中,字符出现的次数
        // 数组中,数据出现的次数

        // var str = 'abcabcdabcdeabcdef';
        // var arr = [1,2,3,1,2,3,4,1,2,3,4,5,1,2,3,4,5,6];


        var str = 'abcabcdabcdeabcdef';
        
        // 1,将字符串转化为数组 , 以空字符串为间隔
        // 每个字符,作为一个单元转化为数组
        var arr1 = str.split('');
        console.log(arr1);

        // 2,数组去重
        var arr2 = [];
        // for循环,for...in也可以
        arr1.forEach(function(v){
            if(arr2.indexOf(v) === -1){
                arr2.push(v);
            }
        })
        console.log(arr2);

        // 3,将没有重复数据的数组,其中存储的数据,作为新数组的索引,新数组的数值是0
        // 作用:表示每个字符,初始出现的次数是0
        var arr3 = [];
        arr2.forEach(function(v){
            // 获取arr2中的数据,作为arr3的索引,0作为数值数据
            arr3[v] = 0;
        })
        console.log(arr3);

        // 4,循环变量原始数组 arr1
        // 如果arr1中的数据,与arr3中的索引相同,就给arr3中这个索引存储的数值 +=1 / ++

        // v1 是 arr1 的数据 a,b,c...
        arr1.forEach(function(v1){
            // v3是 arr3 的索引 a,b,c...
            for(var v3 in arr3){
                if(v1 == v3){
                    // arr1数组中的数值,等于 arr3中索引
                    // 给arr3这个索引存储的数值累加1 可以 是 +=1 / ++
                    arr3[v3]++;
                }
            }
        })
右侧打赏一下 代码改变世界一块二块也是爱
原文地址:https://www.cnblogs.com/ht955/p/14045586.html