JavaScript의 콜(), apply() 및 bind()

안녕하세요.
이 글에서 나는 제목에서 언급한 함수 방법을 토론할 것이다.많은 새로운 자바스크립트 개발자들이 이해하기 어렵다는 것을 발견하고 왔습니다!
다음은 우리의 목표 예이다.const person = { name: "Aman" }우리는 대상 방법으로 호출하고자 하는 함수:
const intro = function(profession, country) {
  return `${this.name} is a ${profession}, who lives in ${country}.`
}

전화()
콜 () 은 함수를 방법으로 호출하는 데 사용되며, 첫 번째 파라미터는 대상의'this' 를 가리키며, 나머지 파라미터는 일반 함수 파라미터로 사용됩니다.
console.log(intro.call(person, "Developer", "India"));
// Outputs: "Aman is a Developer, who lives in India."

적용()
apply()는call()와 유사하며 유일한 차이점은 함수 매개 변수의 전달 방식이다. 즉, 쉼표로 구분된 매개 변수가 아니라 수조에 있는 것이다.
console.log(intro.apply(person, ["Developer", "India"]));
// Outputs: "Aman is a Developer, who lives in India."

바인딩()
bind ()는 콜 () 과 apply () 와 다르다.대상의'this'를 매개 변수로 전달할 때 귀속 함수를 되돌려줍니다. 이 함수를 잠시 후에 호출할 수 있습니다.
const boundIntro = intro.bind(person);
console.log(boundIntro("Developer", "India"));
// Outputs: "Aman is a Developer, who lives in India."

좋은 웹페이지 즐겨찾기