Vsak JavaScript-objekt ima skrito povezavo do drugega objekta, imenovanega njegov prototip. Ko dostopate do lastnosti, JS išče na samem objektu, nato se pomika po tej verigi prototipov dokler ne najde lastnosti ali ne doseže null. To je delegiranje, ne kopiranje.
animal = {
() { ; },
};
dog = .(animal);
dog. = ;
dog.();
.(dog) === animal;
dog.();
dog.();
