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

京公网安备 11010502036488号