有和没有return语句的函数之间有区别吗?

Mat*_*ell 6 javascript

假设您有2个不返回值的相同函数

function a() {
    // do some interesting things
}

function b() {
    // do the same interesting things
    return;
}
Run Code Online (Sandbox Code Playgroud)

功能b显然更冗长,但这些功能有什么区别?

Ada*_*kis 10

没有真正的区别; 两人都会回来undefined.

没有return语句的函数将返回undefined,具有空return语句的函数也将返回.


要自己确认,可以运行此代码 - FIDDLE:

?function a() {
}

function b() {
    return;
}

var aResult = a();
var bResult = b();

alert(aResult === bResult);  //alerts true
Run Code Online (Sandbox Code Playgroud)