ADMICRO
Cho đoạn code sau. Kết quả là:
let dog = {
breed: 'Border Collie',
sound: 'Wooh',
getBreed: () => {
return this.breed;
},
getSound: function() {
return this.sound;
}
};
console.log(dog.getBreed(), dog.getSound());
Chính xác
Xem lời giải
Hãy suy nghĩ và trả lời câu hỏi trước khi xem đáp án
ADSENSE / 1
Lời giải:
Báo saithis trong một Arrow functions không được bind như trong một function bình thường mà this được thừa hưởng từ scope bên ngoài của nó (lexical scoping). Đó là lý do tại sao this trong function getBreed không phải là object dog mà là global object, ở trình duyệt là window object, nên this.breed trả về undefined.
Câu hỏi này thuộc ngân hàng trắc nghiệm dưới đây, bấm vào Xem chi tiết để làm
toàn bài
ZUNIA12
ZUNIA9
AANETWORK