bind()
call()
, apply()
와 bind()
의 차이.
=> bind()
는 함수를 실행하지 않고 this
바인딩만 한 뒤, 함수를 반환한다. : 함수를 실행하지 않음!
바인드에도 우선순위가 있나요? => 예, 있습니다. 레퍼런스로 올리겠음.
var name = "Window";
var alice = {
name: "Alice",
sayHi: function() {
alert(this.name + " says hi");
}
};
var bob = { name: "Bob" };
alice.sayHi.bind(bob);
setTimeout(alice.sayHi(), 1000);
bind()
는 일시적이다.
setTimeout
은 비동기 함수: 백그라운드에서 기다리다가 콜백함수를 실행
Callback Queue
는 Call Stack
이 비워진 후 실행된다.
알아보기: 참조타입, 원시타입 비교