javascript - Javascript Prime Numbers - 需要澄清 2 如何是 Prime。
问题描述
我已经搜索了这个答案,但找不到解释。我知道这个答案可能很愚蠢,但我只需要澄清以下函数的工作原理。如果我输入 isPrime(2) 我知道它返回 true 因为它是素数,但我不明白如何。由于 isPrime(2) 将是 2 % 2 === 0 它不应该返回 false 吗?
function isPrime(value) {
for(var i = 2; i < value; i++) {
if(value % i === 0) {
return false;
}
}
return value > 1;
}
解决方案
当你将这个'2'传递给你的函数isPrime(2)时,这不会通过for循环,因为循环中的条件不满足,它通过'return value > 1',这是一个条件运算符'>'返回如果条件为真,则为真,否则为假。因此,当您传递 2 时,它会返回“true”,因为 (2 > 1)。
检查这个MDN
干杯
推荐阅读
- c++ - 如何将 C++ 输出捕获到 Bash 变量?
- r - dyld:库未加载:/usr/local/opt/openblas/lib/libopenblasp-r0.2.20.dylib
- mysql - 更新查询未充分利用 MySQL 8 中的索引
- loops - 由于“Next without For”而无法编译
- python - Pycharm Can't install TensorFlow
- polymer-3.x - 用于聚合物 3 的轮播网络组件
- vb.net - Item.ToString 返回文本 listviewitem: {value} 而不仅仅是文本
- php - Symfony Twig 模板表单重定向损坏
- javascript - 未触发 Vue 指令的 Hook=componentUpdated
- apache - 具有相同 vhost documentroot 的多个 xampp