2016-11-14 1 views
1

Я работаю над очень большим файлом coffeescript другой команды, первоначально разработанной. По какой-то причине существует «неопределенный» в конце почти каждый блок кода в файле. Например:Зачем вам нужно «неопределенное» в конце каждого блока в coffeescript?

someFunction =() -> 
    ajaxReq(
     blah blah 
     undefined 
    ) 
    undefined 

$("#some_id").click((e)-> 
    e.preventDefault() 
    blah blah 
    undefined 
) 

    $(".some_class").change(-> 
    blah blah 
    undefined 
    ) 

Может кто-то, пожалуйста, помогите мне понять, почему они это сделали, и если это необходимо? Спасибо.

+3

[релевантно] (http://stackoverflow.com/questions/7391493/is-there-any-way-to-not-return-something-using-coffeescript) – Alec

ответ

2

Потому что CoffeeScript возвращает последнее выражение из функции. В JavaScript все функции возвращают undefined по умолчанию. Вам не нужно писать undefined в этих случаях, так как вы не используете возвращаемое значение, но если бы вы были и хотели, чтобы он был последовательным, вам нужно было бы вернуть undefined.

+2

Вы также можете использовать явный оператор 'return' без параметров. – Barmar

Смежные вопросы