javascript - 如何遍历字符串并将字符推送到对象
问题描述
我正在尝试创建一个函数,在该函数中我接受一个包含元音的字符串并对其进行迭代,然后将元音推送到一个对象中。我正在使用 forEach 循环(我不能使用任何其他类型的循环)来检查每个字符以检查字母并查看它是否是元音,如果是,我将元音字符设置为等于对象键和数量元音出现的次数将是该值。到目前为止,这是我的代码:
function vowelCount(str) {
let obj = {}
str.split(' ')
str.forEach(function(val) {
obj.val = 'hi'
})
return obj
}
我知道还有很多工作要做,但我不确定如何将键设置为等于元音并将出现次数设置为值。
解决方案
function vowelCount(str) {
const vowels = { a: 0, e: 0, i: 0, o: 0, u: 0 };
str.split('').forEach((ch) => {
if (vowels[ch]) {
vowelCount++;
}
});
return vowels;
}
如果您愿意,您可以随时过滤值以排除零计数。并且不要害怕用于迭代的其他函数,例如:
const vowelCount = (str = '') =>
str.split('').reduce(
(vowels, ch) => {
if (vowels[ch]) {
vowels[ch]++;
}
return vowels;
},
{ a: 0, e: 0, i: 0, o: 0, u: 0 }
);
推荐阅读
- html - Flexbox Hero 不会居中
- android - 非周期性后台作业长时间运行
- python-3.x - Python while循环通过程序不起作用
- mysql - 将 MySQL 远程 URL 连接到 Spring Boot 应用程序
- mongodb - Meteor 中对象的发布计数
- libreoffice-calc - 在单元格中添加公式和字符串,libre calc 2017
- archive - 7zip 不将文件发送到存档位置
- spring-boot - spring boot、jax-rs、jersey中无法识别多个URL查询参数
- python - 反向搜索excel行并附加正整数
- ruby-on-rails - Rails docker应用程序在一段时间后停止工作