1.
function Korean () {
this.favorite = '김치';
this.makeStew = function (isHot) {
return `${isHot ? '매운' : '순한'} ${this.favorite}찌개`;
};
this.fryRice = (isHot) => {
return `${isHot ? '매운' : '순한'} ${this.favorite}볶음밥`;
};
}
function Italian () {
this.favorite = '피자';
}
const korean = new Korean();
const italian = new Italian();
console.log(korean.makeStew(true));
console.log(korean.fryRice(true));
italian.makeStew = korean.makeStew;
italian.fryRice = korean.fryRice;
console.log(italian.makeStew(false));
console.log(italian.fryRice(false));
// ♻️ 새로고침 후 실행
class Korean {
constructor () {
this.favorite = '김치';
this.fryRice = (isHot) => {
return `${isHot ? '매운' : '순한'} ${this.favorite}볶음밥`;
}
}
makeStew (isHot) {
return `${isHot ? '매운' : '순한'} ${this.favorite}찌개`;
}
}
class Italian {
constructor () {
this.favorite = '피자';
}
}
const korean = new Korean();
const italian = new Italian();
console.log(korean.makeStew(true));
console.log(korean.fryRice(true));
italian.makeStew = korean.makeStew;
italian.fryRice = korean.fryRice;
console.log(italian.makeStew(false));
console.log(italian.fryRice(false));
console.log(
korean.fryRice.call({favorite: '된장'}, true)
);
console.log(
korean.fryRice.apply({favorite: '된장'}, [true])
);
console.log(
korean.fryRice.bind({favorite: '된장'}, true)()
);
댓글 영역