项目Euler Q3 JavaScript

项目Euler Q3 JavaScript,javascript,Javascript,我的代码如下: function is_prime(num) { for(i=2; i < num; i++) { if(num % i === 0) { return false; } else { return true; } } }; var total = 600851475143, b = 2, storemax = 0; function ma

我的代码如下:

function is_prime(num) {
    for(i=2; i < num; i++) {
        if(num % i === 0) {
            return false;
        } else {
            return true;
        }
    }


};

var total = 600851475143,
    b = 2,
    storemax = 0;

function max_prime(total) {
    if(total % b === 0) {
        storemax = total / b;
        if (is_prime(storemax) = true) {
            console.log(storemax);
        } else {
            b += 1;
            max_prime(total);
        }
    }
};
函数为素数(num){
对于(i=2;i

我做错了什么?我已经在这上面呆了一段时间了。。。正在尝试学习odin project web编程课程。

问题出现在您的
max\u prime
函数中

if (is_prime(storemax) = true) {
在这里,当您应该使用比较运算符时,您使用的是赋值运算符

将此更改为

if (is_prime(storemax === true) {
这将检查
的值是否等于
true


另外,JavaScript函数遵循一种低用例约定。将
is\u prime
更改为
isPrime
max\u prime
更改为
maxPrime

您想做什么?更清楚地解释你的目标可能是这样,也可能不是这样,但是你在代码中写了
if(is_prime(storemax)=true)
,我相信你的意思是
if(is_prime(storemax)==true)
。你应该使用
==
来比较值和类型。否则,你是对的。谢谢你的帮助!我做了修改,但当我有文档时,它仍然不会显示任何内容。。。。有什么想法吗?