gpt4 book ai didi

javascript - 有人可以用 Javascript 解释 .indexOf() 的逻辑吗?

转载 作者:行者123 更新时间:2023-12-01 16:17:56 24 4
gpt4 key购买 nike

function vowelsAndConsonants(s) {
var vowels = ['a','e','i','o','u'];

for(let i =0; i<s.length; i++){
if(vowels.indexOf(s[i]) > -1 ){
console.log(s[i]);
}
}

for(let j = 0; j<s.length; j++){
if(vowels.indexOf(s[j]) < 0){
console.log(s[j]);
}
}
}

上面的代码打印出输入的元音和辅音。

我很难理解如何 .indexOf()特别适用于这种情况。

我明白 .indexOf()搜索数组并返回要查找的元素的位置,但为什么会出现以下条件 if(vowels.indexOf(s[i]) > -1)只返回元音?

  • 据我了解,如果.indexOf()返回 -1 表示没有找到匹配项。在这种情况下,会 if(vowels.indexOf(s[i]) > -1)意味着如果找到匹配我们应该执行代码,因为它大于 -1?
  • 同样,在这种情况下 if(vowels.indexOf(s[j]) < 0)那么就意味着如果找不到匹配项,则执行 if 中的任何内容声明。

有人可以解释一下逻辑并举一个简单的例子吗?我想我明白了逻辑,但同时我又觉得我没有。

最佳答案

indexOf函数在元音数组中搜索。

如果它找到一个值,它将返回它的索引,因此结果将大于 -1。

如果找不到,结果将为-1。

不过最好用
if(vowels.indexOf(s[j]) === -1)而不是
if(vowels.indexOf(s[j]) < 0)

关于javascript - 有人可以用 Javascript 解释 .indexOf() 的逻辑吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61554662/

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