.prototype vs proto vs Prototype
1. [[Prototype]] - The Hidden Internal Link
What it is: The actual hidden property that stores the inheritance connection.
javascript
let animal = { eats: true };
let rabbit = { jumps: true };
rabbit.__proto__ = animal;
// Now rabbit.[[Prototype]] points to animal (internal, can't access directly)2. __proto__ - The Accessor (getter/setter)
What it is: A way to get/set the [[Prototype]] property.
javascript
let animal = { eats: true };
let rabbit = { jumps: true };
// SETTER - sets rabbit.[[Prototype]] = animal
rabbit.__proto__ = animal;
// GETTER - reads rabbit.[[Prototype]]
console.log(rabbit.__proto__ === animal); // true