JS объект функции

В JavaScript функция представляет собой объект. Этот объект имеет определенные свойства и методы, которые позволяют выполнять различные операции с функциями.

Давайте посмотрим на примерах. Пусть у нас есть следующая функция:

function func(num1, num2) { return num1 + num2; }

Пример свойств объекта функции:

console.log(func.name); // имя функции console.log(func.length); // количество параметров

Пример методов объекта функции:

func().call(2, 3); // вызывает функцию с заданными параметрами

Объекты функций создаются автоматически при определении функции и могут быть получены с помощью ключевого слова this внутри функции. К примеру, получим имя функции внутри этой функции:

function func(num1, num2) { console.log(this.name); return num1 + num2; }

Все свойства и методы функции можно посмотреть в консоли, если вывести в нее функцию следующим образом:

console.dir(func);