반응형
Function.prototype.call()
주어진 this와 파라매터 목록을 가지고 함수를 호출.
function Product(name, price) {
this.name = name;
this.price = price;
}
function Food(name, price) {
Product.call(this, name, price);
this.category = 'food';
}
console.log(new Food('cheese', 5).name); // 'cheese'
Function.prototype.apply()
주어진 this와 파라매터 배열(혹은 유사 배열 객체도 가능)을 가지고 함수를 호출.
const numbers = [5, 6, 2, 3, 7];
const max = Math.max.apply(null, numbers);
console.log(max); // 7
const min = Math.min.apply(null, numbers);
console.log(min); // 2
Function.prototype.bind()
주어진 this로 this를 설정한 새로운 함수를 생성.
const module = {
x: 42,
getX: function() {
return this.x;
}
};
const unboundGetX = module.getX;
console.log(unboundGetX()); // undefined
const boundGetX = unboundGetX.bind(module);
console.log(boundGetX()); // 42
참고:
developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Function
반응형
'JavaScript' 카테고리의 다른 글
[JavaScript] setTimeout의 delay는 음수도 가능할까? (0) | 2021.01.21 |
---|---|
[JavaScript/Pseudoclassical/ES5] Subclass method에서 Superclass Method 호출하기(오버라이딩 메서드 호출) (0) | 2021.01.20 |
div height 100% 높이 구하기 (0) | 2021.01.11 |
[ES6 JavaScript] WeakSet (0) | 2020.10.15 |
[ES6 JavaScript] WeakMap (0) | 2020.10.13 |