This question already has answers here:
Count number of matches of a regex in Javascript
(6个答案)
2年前关闭。
我的小功能似乎没有更新
我目前的思路是:将参数转换为数组,对数组进行迭代,如果索引与我的
我觉得解决方案就在我的脑海底下,但是我一直在改变很多小事情,以使其能够正常工作,而且我目前没有任何想法。
(6个答案)
2年前关闭。
我的小功能似乎没有更新
totalVowels
变量。我目前的思路是:将参数转换为数组,对数组进行迭代,如果索引与我的
vowel
正则表达式匹配,则我的totalVowels
变量将为每个匹配项加1。我觉得解决方案就在我的脑海底下,但是我一直在改变很多小事情,以使其能够正常工作,而且我目前没有任何想法。
function VowelCount(str) {
let strArr = str.split('');
let totalVowels = 0;
let vowel = /a|e|i|o|u/gi
for (let i = 0; i < strArr.length; i++) {
if (strArr[i] === vowel) { totalVowels++ }
}
return totalVowels;
}
console.log(VowelCount('vowel'));
最佳答案
使用.match()
而不是strArr[i] === vowel
进行if
条件检查,因为您使用的是正则表达式:
function VowelCount(str) {
let strArr = str.split('');
let totalVowels = 0;
let vowel = /a|e|i|o|u/gi
for (let i = 0; i < strArr.length; i++) {
if (strArr[i].match(vowel)) {
totalVowels++
}
}
return totalVowels;
}
console.log(VowelCount('hello there'));
关于javascript - totalVowels变量未更新,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52973125/
10-11 05:56