【发布时间】:2021-11-11 22:39:33
【问题描述】:
我正在使用 node.js 开发地牢爬虫。我想要一种优雅的方式来跟踪用户的结局。我在想,如果我可以拥有每个结局的数组,然后如果实现了结局,只需将一个项目设置为 true,那就太好了。这样可以轻松浏览列表并打印已实现的结局,然后计算完成百分比。
我的尝试:
var end1 = true
var end2 = true
var end3 = false
var end4 = true
var end5 = false
var endings = [end1, end2, end3, end4, end5]
function listEndings() {
console.log("You have found these endings:")
var total = 0
for (let i = 0; i < endings.length; i++) {
if (endings[i] = true) {
console.log(String(endings[i]))
total = total + 1
}
}
console.log(`\nIn total you have ${total}/${endings.length + 1} endings. (${(total/(endings.length + 1))*100}%)`)
}
我想要的输出
You have found these endings:
end1
end2
end4
In total you have 3/5 endings. (60%)
可以使用这样的方法吗?有没有其他推荐的方法?
非常感谢您的帮助!
【问题讨论】:
-
我会将结尾推送到像 archivedArr.push(endings[3]) 等这样的秒数组,而不是最后不需要“大”for循环。也不需要真假的东西
-
或者只是将它们存储在单个值中,例如没有结尾 00000、所有结尾 11111、end3 00100 ...
-
(endings[i] = true是赋值而不是比较。为了比较使用===。
标签: javascript node.js arrays boolean