# Метод apply

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

## Синтаксис

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

## Пример

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

`<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.apply(elem, [1, 2, 3]);`

## Пример

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

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

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

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

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

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

←→
↑
en ru