Показать сообщение отдельно
  #3 (permalink)  
Старый 01.07.2019, 21:59
Аватар для Malleys
Профессор
Отправить личное сообщение для Malleys Посмотреть профиль Найти все сообщения от Malleys
 
Регистрация: 20.12.2009
Сообщений: 1,714

Сообщение от victor256
1) что это вообще за синтаксис сверху: !function и далее функции через запятую?
Дело в том, чтобы вызвать анонимную функцию, она должна быть выражением. Функцию можно сделать выражением, заключив её в скобки!
(function(e) { /* ... */ })(jQuery);
Этот вызов функции представляет выражение, которое возвращает функция.

С ним можно работать, как с любым другим выражением, например если функция возвращает булево значение, то можно применить оператор «не», который поменяет булево значение на противоположное. Конечно же результат такого вычисления должен быть записан в переменную, иначе оно бессмысленно и может быть упрощено.

var isSomethingNotTrue = !(function(e) { /* ... */ })(jQuery);
Можно убрать лишнюю пару скобок
var isSomethingNotTrue = !function(e) { /* ... */ }(jQuery);
Получилось как у вас, но у вас результат никуда не записывается, так что можно упростить до первого варианта, который я привёл выше.

Сообщение от рони
1) ! способ запустить функцию, сразу после создания.
Интересно, что это не запускает никакую функцию вообще!

Если что-то перечисляется через запятую, то оно становится выражением! Обратите внимание, что третье выражение у вас вызывается нормально!

Сообщение от victor256
2) зачем делать
var $ = jQuery
Знак доллара является разрешенным символов для идентификатора в языке Javascript. jQuery использует знак $ как сокращение для идентификатора jQuery.
Ответить с цитированием