169 похожих чатов

Может кто объяснить, почему рез работы функции выводит 'lo'?

11 ответов

5 просмотров

А если вместо запятой + поставить?

geroni mo- Автор вопроса
Влад
А если вместо запятой + поставить?

Тогда, конечно, будет 'hello' т.к. я передаю 1 параметр в функцию

Comma operator выполняет все операнды слева направо и возвращает значение последнего операнда, тут нет вызова функции

geroni mo- Автор вопроса
versteht es niemand
Comma operator выполняет все операнды слева направ...

Ага. Я думала, что () после декларации функции это передача параметров в неё и вызов. Неправильный синтаксис? Можете напомнить как это называется? Я загуглю, спасибо

Функция и не вызывается В джс есть такой синтаксис: (Что-то1, что-то2, что-то3) Вернётся последнее

Скобки нужны вокруг функции (function(){ /* ... */ } ) ()

или перед функцией какой-нибудь оператор ~function(){ /* ... */ } ()

geroni mo
Ага. Я думала, что () после декларации функции это...

Будь твой синтаксис невалиден, случился бы SyntaxError. У тебя всё валидно, просто работает не так, как ты ожидаешь. У тебя функция создается через FunctionDeclaration. Это не выражение, ты не можешь его использовать тут же, FD ничего не возвращает. Чтобы функцию тут вызвать, как тебе выше уже и сказали, тебе следует обрамить этот FD скобками. Тогда он магически становится ExpressionStatement, то есть выражением. Каждое выражение вычисляется и возвращает какое-то значение, в этом случае — ссылку (reference) на функцию. Теперь ты можешь сделать великий и ужасный вызов по ссылке (calling by reference). Разрешаю не гуглить.

FTOH
или перед функцией какой-нибудь оператор ~function...

Для чего нужен оператор перед функцией? Не встречал таких примеров

Roman Ramp
Для чего нужен оператор перед функцией? Не встреча...

чтобы функция считалась выражением и её можно было сразу запустить не оборачивая в скобки

Aleksandr Rekuts
чтобы функция считалась выражением и её можно было...

понял, про скобки знал, но что-то не подумал)

Похожие вопросы

Обсуждают сегодня

читать файл максимально быстро? странный вопрос))
zamtmn
53
тоесть, указав return eax, сгенерируется никому ненужная инструкция mov eax,eax ?
Aiwan \ (•◡•) / _bot
24
Приветствуем всех! Устали без проектов? Если вы программист и хотите получать стабильные заказы, компания Elif предлагает вам недельный курс по поиску проектов и их ведению. ...
Elif
1
А чего сейчас в моде вместо Error для эксепшенов? А то я тут внезапно узрел что он не рекомендуется :) У Try::Tiny какой-то совершенно ужасный синтаксис если надо конкретные э...
Denis F
19
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Привет. Сразу скажу, что на C/C++/Rust я не пишу, но тем не менее возникла потребность дебага C/C++/Rust кода. Суть: есть серверное приложение, которое периодически ведёт себ...
ninekeem 🐳
4
всем привет! углубившись в плюсы и начав изучать реверсинг понял, что без асм'а никуда со своими высокоабстрактными представлениями начал изучать механизмы асма, и не совсем п...
9
Всем привет, после Си стоит учить плюсы или лучше на раст перейти?
Linus
8
или вы считаете муит дает знание?
супер_лох_3000 альфа версия
12
значить например он учился в СДУ то получается он особенный?)
Asets Serikov
11
Карта сайта