Prototipos en JS

Ana Martínez Aguilar
1 min readMay 30, 2018

--

Un objeto en JavaScript tiene otro objeto, llamado prototype (prototipo, en español). Cuando pedimos a un objeto una propiedad que no tiene, la busca en su prototipo. Así, un prototipo es otro objeto que se utiliza como una fuente de propiedades alternativa.

Prototype es una propiedad de Object, -el objeto del que se derivan todos los demás objetos-, y esta propiedad es, a su vez, un objeto. Por tanto, el prototipo último de un objeto es Object.prototype. Este prototipo padre tiene métodos que comparten todos los objetos.

let emptyObject = {};empty.toString();
→ “[object Object]”

Las funciones y los arrays, que también son objetos, tienen prototipos con propiedades específicas. Así, Function.prototype tiene métodos como bind y call y Array.prototype tiene métodos como slice y sort.

Crear un prototipo personalizado

Podemos crear el prototipo que queramos con Object.create.

let specificPrototype = {
myMethod(){
console.log(“Hello”);
}
}
let newObject = Object.create(specificPrototype);newObject.myMethod();
--> "Hello"

--

--