Подтвердить что ты не робот

Разница между "var foo = function..." и "function foo()..."

Возможные дубликаты:
"Обычные" функции против функциональных переменных в JavaScript
Что вы называете синтаксисом JavaScript, поэтому я могу его исследовать?

Существует ли принципиальное отличие между

function foo()
{
    things();
}

и

var foo = function()
{
    things();
}

Или function ... просто синтаксический сахар?

Спасибо заранее.

4b9b3361

Ответ 1

Они разные (но дают аналогичные результаты). По сути, первая - это настоящая именованная функция. Второй - это объявление регулярной переменной с прикрепленной к нему анонимной функцией. Есть несколько тонких различий... здесь они прекрасно подведены:

Неповторимость JavaScript-функций (Обязательно прочитайте комментарии тоже... более хорошая информация там)