Every JavaScript object has a hidden link to another object called its prototype. When you access a property, JS looks on the object itself, then walks up this prototype chain until it finds the property or reaches null. This is delegation, not copying.
animal = {
() { ; },
};
dog = .(animal);
dog. = ;
dog.();
.(dog) === animal;
dog.();
dog.();
