call (this의 인자값 넘겨주기)
developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Function/call
call
함수는 특정 매서드를 호출할때 this
값이나 기타 파라미터를 같이 전달해준다.
const person = {
firstName: 'Ed',
lastName: 'Developer',
getName() {
console.log(this.firstName + ' ' + this.lastName);
}
}
function registerUser() {
console.log(this);
}
registerUser();
위와 같이 호출하게 되면 registerUser()
안에 있는 this
는 window
를 가르키게된다.
하지만 call
을 사용하게되면 this를 지정해줄수있다.
const person = {
firstName: 'Ed',
lastName: 'Developer',
getName() {
console.log(this.firstName + ' ' + this.lastName);
}
}
function registerUser() {
console.log(this);
}
registerUser.call(person);
또한 call
의 인자값으로 여러개를 같이 전달해서 this
뿐만 아니라 파라미터도 넘겨 줄수있다.
const person = {
firstName: 'Ed',
lastName: 'Developer',
getName() {
console.log(this.firstName + ' ' + this.lastName);
}
}
function registerUser(country, lang) {
this.getName();
console.log(`MY country is ${country} and my language is ${lang}`);
}
registerUser.call(person, 'hungary', 'en');
'JavaScript > Vanilla JS' 카테고리의 다른 글
Promise (프로미스) 1 (0) | 2021.04.20 |
---|---|
Array.concat (배열 추가 반환) (0) | 2021.04.18 |
prototype 1 (프로토타입) (0) | 2021.04.10 |
Array.flat (중첩 배열 풀기, 빈값 제거) (0) | 2021.04.09 |
Array.fill (배열 채우기) (0) | 2021.04.08 |
댓글
이 글 공유하기
다른 글
-
Promise (프로미스) 1
Promise (프로미스) 1
2021.04.20 -
Array.concat (배열 추가 반환)
Array.concat (배열 추가 반환)
2021.04.18 -
prototype 1 (프로토타입)
prototype 1 (프로토타입)
2021.04.10 -
Array.flat (중첩 배열 풀기, 빈값 제거)
Array.flat (중첩 배열 풀기, 빈값 제거)
2021.04.09