javascript - 为什么这个for循环有溢出?
问题描述
这个循环一直循环到-30808,我不知道为什么!我希望它从 100 倒数到 1 或 0。
停止条件小于 num 或 1。
它出什么问题了?
谢谢
function first(num){
for (let i = num - 1; i > num || 1; i--){
let numFactorial = i;
console.log(numFactorial);
}
};
first(100);
解决方案
您将 i 初始化为 num -1 并开始递减,这意味着它永远不会大于 num。如果您尝试继续循环,只要 i 大于或等于 1,那么它应该如下所示。
for (let i = num - 1; i >= 1; i--)
同样,无论何时您尝试使用 || 比较具有两种不同条件的变量 或 && 请按以下方式进行操作,而不是i > num || 1
在这里您将 i 与 num 进行比较,但不与 1 进行比较。
我 > 数 || 我 >= 1
推荐阅读
- sql - SQL:跨行执行计算,为结果创建一个新行
- javascript - 网站上的背景 youtube 视频突然不再工作了
- python - 使用 deepdish 附加到 h5 文件
- python - SQLParse - 通配符 LIKE 条件问题
- r - 删除少于“x”行的列表元素
- r - 缺少参数,没有默认值
- html - 将谷歌幻灯片转换为 html 不起作用
- php - 如何在将数据发送到 django API 视图时验证 wordpress wp_remote_post()
- angular - 如何获取 HTML 元素的 DropListRef?
- javascript - 如何重置下拉列表的值,单击 Vuejs 中的标签?