js实现查找字符串出现最多的字符和次数

代码如下:

<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>最多出现的字符和次数</title>
</head>
<body>
    <script>
        var str = 'h$^&**0';
        function most(str) {
            return (str + '').split('').reduce(function(pre,cur,index,array){//reduce()是个迭代执行函数,ie9+标准模式支持,跟map()函数有点类似。
                cur in pre ? pre[cur]++ : (pre[cur]=1);
                pre[cur] > pre.value && (pre.value=pre[cur],pre.char = cur);
                return pre;
            },{value:0,char:null});
        }

        console.log(most(str));
    </script>
</body>
</html>

 reduce()函数的参数用法可以参考网址:https://msdn.microsoft.com/library/ff679975(v=vs.94).aspx