我刚刚开始学习Javascript,我对下面的特定代码有一个特定的问题.它是Eloquent Javascript第4章中lycanthrope登录的一部分.由于我的问题的特殊性,我没有包括与此问题相关的所有其他代码,因为我认为没有必要回答我的问题.
如果这被认为是"不良做法",请告诉我,我将确保修改此和/或未来的帖子以显示更多背景信息.
在下面的代码中,第二行显示返回.到目前为止,我已经了解到indexOf返回一个正数或零,当且仅当它发现其中传递的任何内容时才会发生.如果没有发现,则返回-1.
在这种情况下,它后跟!= -1,我理解为"不等于-1".这对我来说很清楚.
我不完全理解的是第2行的实际回报最终是什么.它返回true或false的布尔值吗?或者它是否返回了找到"事件"的实际索引?
接下来,在第一个if语句中,我们再次看到hasEvent变量.我将此语句读作"如果hasEvent(event,entry)为true,则将1添加到索引中.
我是否正在阅读'这是正确的,第二行的回报确实是一个布尔值?
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;
}
Run Code Online (Sandbox Code Playgroud)
感谢您的帮助,请告诉我是否应该以不同的方式陈述此问题!我想在继续之前确保我理解事情!
| 归档时间: |
|
| 查看次数: |
1203 次 |
| 最近记录: |