# Метод call

Метод `call` позволяет вызвать функцию с заданным контекстом. Первым параметром метода следует указывать контекст функции, а остальными параметрами - параметры функции.

## Синтаксис

`функция.call(контекст, параметр1, параметр2...);`

## Пример

Пусть у нас есть инпут:

`<input id="elem" value="text">`

Пусть дана также функция, принимающая три параметра:

`function func(param1, param2, param3) { console.log(this.value + param1 + param2 + param3); }`

Давайте вызовем нашу функцию так, чтобы `this` внутри функции был равен нашему инпуту, и при этом передав ей параметрами числа `1`, `2` и `3`:

`let elem = document.querySelector('#elem'); func.call(elem, 1, 2, 3);`

## Пример

Пусть функция не принимает параметров:

`function func() { console.log(this.value); }`

В этом случае при вызове этой функции через `call` достаточно передать только первый параметр с контекстом:

`let elem = document.querySelector('#elem'); func.call(elem);`

## Смотрите также

- метод `apply`,
  который вызывает функцию с контекстом
- метод `bind`,
  который привязывает контекст к функции

← →
↑
en ru