Sobes.tech
Junior — Middle
99

JavaScript-те функцияларды bind және apply әдістері арқылы шақырудың негізгі айырмашылығы неде?

AI-дан жауап

sobes.tech AI

Основное отличие между bind и apply в JavaScript заключается в том, что:

  • bind создаёт новую функцию с привязанным контекстом (this) и, опционально, начальными аргументами. Эта новая функция может быть вызвана позже.
  • apply сразу вызывает функцию с указанным контекстом и аргументами, переданными в виде массива.

Пример:

function greet(greeting, punctuation) {
  console.log(greeting + ', ' + this.name + punctuation);
}

const person = { name: 'Иван' };

const boundGreet = greet.bind(person, 'Привет');
boundGreet('!'); // Выведет: Привет, Иван!

// С apply вызываем сразу

greet.apply(person, ['Здравствуйте', '.']); // Выведет: Здравствуйте, Иван.