Skip to content

Commit 182b000

Browse files
authored
Update 1-js/09-classes/02-class-inheritance/article.md
1 parent be32cbd commit 182b000

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

1-js/09-classes/02-class-inheritance/article.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -458,7 +458,7 @@ longEar.eat(); // Error: Maximum call stack size exceeded
458458

459459
Це може бути не таким очевидним, але якщо ми відстежимо виклик `longEar.eat()`, то ми можемо зрозуміти, чому так відбувається. В обох рядках `(*)` і `(**)` значення `this` є поточним об'єктом (`longEar`). Це важливо: всі методи об'єкта отримують поточний об'єкт, як `this`, а не прототип або щось інше.
460460

461-
Отже, в обох рядках `(*)` і `(**)` значення `this.__proto__` точно таке ж саме: `rabbit`. Вони обидва викликають `rabbit.eat`. Не піднімаючись по ланцюзі наслідування та перебуваючи в нескінченній петлі.
461+
Отже, в обох рядках `(*)` і `(**)` значення `this.__proto__` точно таке ж саме: `rabbit`. Вони обидва викликають `rabbit.eat`. При цьому не піднімаються ланцюжком наслідування та перебувають в нескінченній петлі.
462462

463463
Ось картина того, що відбувається:
464464

0 commit comments

Comments
 (0)