我已经编写了以下简单的JavaScript代码。但是,每当我运行它时,结果就会显示“ Undefined”。

以下是代码:

function naturalSum(num1,num2) {
    var sumValue = 0;
    for (i=0;i<1000;i++)
    {
        if (i%num1 === 0 || i%num2 === 0) {
            sumValue += i ;
        }
    }
}
document.write(naturalSum(3,5));


我想知道为什么会这样。当我不将代码包含在函数中时,代码可以正常工作。请帮助我。

最佳答案

JavaScript函数默认情况下返回undefined,除非您显式返回某些内容。

因此,如果您希望函数返回sumValue,则应添加return sumValue;作为函数的最后一行:

function naturalSum(num1,num2) {
    var sumValue = 0;
    for (i=0;i<1000;i++)
    {
        if (i%num1 === 0 || i%num2 === 0) {
            sumValue += i ;
        }
    }
    return sumValue;
}


@AmitJoki创建了一个JSFiddle来演示:


http://jsfiddle.net/dgC46/

关于javascript - 为什么该Javascript函数在被调用时返回“Undefined”?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22149384/

10-12 15:13