Javascript 函数调用后返回Undefined的原因

Javascript 函数调用后返回Undefined的原因,javascript,undefined,hoisting,Javascript,Undefined,Hoisting,我只是在玩Javascript的概念。我在玩游戏的时候写了下面的代码,最后我看到一个意外的输出“未定义”。这是从哪里来的 b(); console.log(a); function b(){ a=10; console.log(a*10); } var a=6; console.log(b()); 输出: 一百 十, 一百 undefinedundefined是没有return语句的函数返回的默认值(并且未使用ne

我只是在玩Javascript的概念。我在玩游戏的时候写了下面的代码,最后我看到一个意外的输出“未定义”。这是从哪里来的

  b();
    console.log(a);

    function b(){
        a=10;
        console.log(a*10);
    }

    var a=6;
    console.log(b());
输出:

一百

十,

一百


undefined

undefined
是没有
return
语句的函数返回的默认值(并且未使用
new
操作符调用该语句)。

您没有为函数设置返回值,因此它返回默认的
undefined
。如果希望函数返回计算的值,我建议执行以下操作:

function b(){
    a=10;
    calculatedValue = a*10;
    console.log(calculatedValue);
    return calculatedValue;
}
将a作为函数的参数传递也可能有用:

function b(a){
    calculatedValue = a*10;
    console.log(calculatedValue);
    return calculatedValue;
}

var a=6;
console.log(b(a));

因为函数没有返回任何内容。函数
b()
没有
return
语句,因此返回值是
undefined
。我建议使用浏览器内置的调试器逐行检查代码。这是准确查看代码中发生了什么(或者实际上,几乎任何代码中都发生了什么)的最佳方法。