gpt4 book ai didi

javascript - 如何摆脱 forEach 或重新构造我的函数?

转载 作者:行者123 更新时间:2023-11-28 20:03:52 25 4
gpt4 key购买 nike

我正在尝试在 forEach 循环中应用中断。我认为不可能在 forEach 中实际使用中断(不是 100% 的原因,我刚刚读到它并且相信它)。

这是我的代码:

function translate(wordString){

var vowel = 'aeiou';
var wordArr = wordString.split(' ');
var wordArray = [];
wordArr.forEach(function(word){


if(vowel.search(word.charAt(0))!=-1){
wordArray.push(word + 'ay');
//WOULD LIKE TO PUT BREAK HERE;
// break;

}
else{
index = 0;
}
for(var i =0; i< word.length; i++){
if(vowel.search(word.charAt(i)) !=-1){
if(word.charAt(i) != 'u' || (word.charAt(i) == 'u' && word.charAt(i - 1) != 'q')){
index = i;
break;
}
}
}
wordArray.push(word.substring(index, word.length) + word.substring(0, index) + 'ay');
});
return wordArray.join(' ');
}

translate('apple');

当我传递一个以元音开头的单词时,我得到一个重复的单词,我希望每当它进入我的第一个 if 语句时就让循环中断。这可能吗?

这是我需要通过的最后两个测试,我想如果我能以某种方式在指定位置停止循环,它们就会得到解决。

这是一个 repl.it 链接 http://repl.it/Nv6

http://repl.it/Nv6

最佳答案

使用.some()代替.forEach(),并在想要中断时返回true

或者.every(),并返回 false 来中断。

关于javascript - 如何摆脱 forEach 或重新构造我的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21176434/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com