2010-08-05 100 views
15

函数应该总是返回一些东西?我经常写其用于简略做的事情,发生了很多诸如非常基本的功能:函数应该总是返回一些东西(Javascript)

function formsAway() { 
    $("#login_form, #booking_form").slideUp(); 
} 

如果这种功能存在 - 有没有更好的办法,或者是这个罚款?

回答

17

他们不必返回任何东西。如果将它留空,它会简单地返回'undefined',在这种情况下很好,因为你永远不打算使用返回值。 Javascript的语法非常简单,据我所知,那些没有返回值的函数和函数之间没有任何真正的区别(除'return'关键字外)

2

函数总是返回 的东西?

我相信完全取决于函数的用法。

有没有更好的办法,还是这个 罚款?

如果有很多可重复使用的代码可以被函数替换,以至于代码看起来更干净,那么编写这些类型的函数的IMO是很好的。但是,只有在发生几次事件时,您才可以直接放置代码,而不是将其替换为函数。您还应该考虑将来在其他地方重复使用此功能的可能性。

2

据我所知,除非你需要它返回的东西,一个函数不必返回任何东西。

它在其他语言中可能有所不同,但我从来没有听说过它是JavaScript中必需的或良好的做法。

4

所有的JavaScript函数都会返回一些东西。如果省略显式返回,则会自动返回undefined。当一个函数返回时,它的实例从内存中被清除掉,如果没有其他指向它们的话,它也会释放其范围内的所有变量。没有强制返回内存管理将不得不手动完成。