首页 > 解决方案 > 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;
}

标签: javascript

解决方案


当你将这个'2'传递给你的函数isPrime(2)时,这不会通过for循环,因为循环中的条件不满足,它通过'return value > 1',这是一个条件运算符'>'返回如果条件为真,则为真,否则为假。因此,当您传递 2 时,它会返回“true”,因为 (2 > 1)。

检查这个MDN

干杯


推荐阅读