使用对象

function count(str) {
    const obj=new Object();
    const arr=str.replace(/\s*/g,'').split('');
    arr.forEach(e=>{
        if(obj[e]){
            obj[e]+=1;
        }else{
            obj[e]=1;
        }
    });
    return obj;

}

使用Map

(1)get() 方法用来获取一个 Map 对象中指定的元素。

(2)set() 方法为Map对象添加一个指定键(key)和值(value)的新元素。

(3)has() 返回一个bool值,用来表明map 中是否存在指定元素

function count(str) {
    let newStr = '';
    let map = new Map();
    for(let i=0; i<str.length; i++){
        let c = str.substr(i,1);
        if(c.trim()){  //空字符不算
            newStr += c;
            let num = 1;
            if(map.has(c)){
                num = parseInt(map.get(c)) + 1;
            }
            map.set(c, num)
        }
    }
    let obj= Object.create(null);
    for (let[k,v] of map) {
       obj[k] = v;
    }
    return obj
}