初面网初面网

call、bind、apply

它们都可以改变this指向,指向第一个参数

  1. call、apply立即执行,bind需要调用
  2. apply第二个参数是数组,call和bind都是多参数

使用场景:

  • apply
var arr1 = [1,2,3,222];
console.log(Math.max.apply(null, arr1))
  • bind
var btn = document.getElementById('btn');
var h1s = document.getElementById('h1s');
btn.onclick = function(){
  console.log(this.id);
}.bind(h1s)

更新于 2025/2/26