# 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);`
← →
↑