我有一个数组["academy"]
,我需要计算数组中字符串的字符数。
输出:
a:2
c:1
d:1
e:1
m:1
y:1
就像这样
我尝试了两个for循环
function sumChar(arr){
let alph="abcdefghijklmnopqrstuvxyz";
let count=0;
for (const iterator of arr) {
for(let i=0; i<alph.length; i++){
if(iterator.charAt(i)==alph[i]){
count++;
console.log(`${iterator[i]} : ${count}`);
count=0;
}
}
}
}
console.log(sumChar(["abdulloh"]));
它工作不正常
输出量:
a : 1
b : 1
h : 1
undefined
3条答案
按热度按时间xmq68pz91#
要计算字符串中每个字符出现的次数,可以使用for循环遍历字符串,并将每个字符作为键添加到对象中,值为它出现的次数。下面是一个示例:
8cdiaqws2#
这里有一个简洁的方法。
[...new Set(word.split(''))]
创建一个字母数组,忽略所有重复的字母。.map
从该数组中取出每个字母,并通过长度检查器对其进行检查。({ [m]: word.split(m).length - 1 })
将该字母设置为object key
,word.split(m).length - 1
是一种快速确定该字母出现次数的方法。62lalag43#
你也可以用正则表达式来检查出现的字符串。在这里我做了一个方法来检查字符串中的字符。希望它能有所帮助。