求数组元素出现的次数

源码

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title></title>
    </head>
    <body>
        <script>  
            var ary =["丁少","王新","丁少"];  
            ary.sort(); //给数组按字母排序
            var res = [];  
            
            for(var i = 0;i<ary.length;){ 
                var count = 0;
                 for(var j=i;j<ary.length;j++){if(ary[i] == ary[j]){count++;}}  
                 res.push([ary[i],count]);  
                 i+=count;  
            }  
            //res 二维数维中保存了 值和值的重复数  
            for(var  i = 0 ;i<res.length;i++){ document.writeln(res[i]+"<br/>");}  
        </script>
        <!--
            就是先排序,
            然后依次找到相同的内容,如果相同,会有累加值,然后I自加,跳过相同个数,重新开始判断另外一个
            比如有数组arr为11122  就是i从0开始,然后Count是3,第二次做I就是3,从第四个数字开始
        -->
    </body>
</html>

posted @ 2016-04-10 12:22  丁少华  阅读(287)  评论(0)    收藏  举报