Javascript Prime数字 - 需要澄清2如何是Prime。

时间:2018-06-14 03:18:11

标签: javascript

我搜索了这个答案,但我找不到解释。我知道这个答案可能很愚蠢,但我只需要澄清以下功能的工作原理。 如果我输入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;
}

1 个答案:

答案 0 :(得分:2)

当你将这个'2'传递给你的函数isPrime(2)时,这不会进行for循环,因为循环中的条件不满足,它会经历'返回值&gt; 1',这是一个条件运算符'&gt;'如果condition为true则返回true,否则返回false。所以当你传递2时,它会返回'true',因为(2> 1)。

选中此MDN

干杯