使用对象
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 }