Где и когда использовать скобки в функции?
Я не совсем понимаю где стоит использовать скобки в функции, а где нет. В инете пишется, что скобки используются при вызове функции, а функция без скобок, я так понимаю, используется, когда мы хотим просто использовать значение функции.
Но вот пример ниже. Здесь нужно использовать значение функции - прибавить к нему 1. Но в итоге прибавляется один ко всему коду функции.
function func() {
console.log('function');
return 5;
}
console.log(1 + func);
Во втором примере опять используется значение функции и тоже не используются скобки, и все работает как надо:
function func() {
console.log('function');
return 5;
}
let a = func;
a();
Можно как-то четко сказать где стоит писать без скобок, а где с?
P. S. Хотя я наверное больше не понимаю что является значением функции. Разве не return возвращает значение функции?
Ответы (1 шт):
Когда нужно вызвать функцию (выполнить код внутри нее) - нужны скобки. Когда коду нужно работать со ссылкой на объект функции - без скобок.
let a = func; // make variable a reference the same function object as func
a(); // call the function