gpt4 book ai didi

javascript - indexOf != -1 是否返回 bool 值?

转载 作者:行者123 更新时间:2023-11-30 07:04:14 24 4
gpt4 key购买 nike

我刚开始学习 Javascript,我对下面的一段特定代码有一个具体的问题。它是 Eloquent Javascript 第 4 章中狼人日志的一部分。由于我的问题的特殊性,我没有包含与此问题相关的所有其他代码,因为我认为没有必要回答我的问题。

如果这被认为是“不良做法”,请务必告诉我,我将确保修改这篇文章和/或以后的帖子以显示更多背景信息。

在下面的代码中,第二行显示了一个返回。到目前为止,我已经了解到 indexOf 返回一个正数或零,当且仅当它发现传入的任何内容出现时。如果未找到任何事件,则返回 -1。

在这种情况下,它后面跟着 != -1,我理解它的意思是“不等于负 1”。这对我来说很清楚。

我不完全理解的是第 2 行的实际返回结果是什么。它是否返回 true 或 false 的 bool 值?或者它是否返回找到“事件”的实际索引?

进一步,在第一个 if 语句中,我们再次看到 hasEvent 变量。我将此语句解读为“如果 hasEvent(event, entry) 为真,则将索引加 1。

我“读”对了吗?第二行中的返回值确实是 bool 值吗?

function hasEvent (event, entry) {
return entry.events.indexOf(event) != -1;
}

function tableFor (event, journal) {
var table = [0, 0, 0, 0];
for (var i=0; i < journal.length; i++) {
var entry = journal[i] , index = 0;
if (hasEvent(event, entry)) index += 1;
if (entry.squirrel) index += 2;
table [index] += 1;
}
return table;
}

感谢您的帮助,请告诉我是否应该以不同的方式陈述这个问题!在我继续之前,我试图确保我理解了事情!

最佳答案

!= 运算符总是 有一个 bool 结果。

后跟表达式的 return 语句返回表达式的值,因此该函数的返回值将是 truefalse.

关于javascript - indexOf != -1 是否返回 bool 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38015026/

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