En este artículo, cubriremos el tema de qué es proto y prototipos, su sintaxis, ejemplos y cuáles son las diferencias que existen entre ambos, y cómo difieren y cómo difieren en diferentes aspectos.
Proto y prototipo son objetos que ayudan a crear una array, un objeto o una función y brindan acceso a esos métodos u objetos específicos directamente sin usar memoria e incluso dará acceso a su constructor y a todos los métodos de la array como push, pop, etc.
Proto: es un objeto real que proporciona una forma de heredar propiedades de JavaScript con la ayuda de un objeto que se crea con new. Todo objeto con comportamiento asociado tiene una propiedad interna [[prototipo]].
Sintaxis:
Object.__proto__ = value
Ejemplo:
Javascript
function Student(name,age) { this.name = name; this.age = age; } var stu1 = new Student("John", 50); // Ubject have proto property stu1 // Also if apply strict equal to check // if both point at the same // location then it will return true. Student.prototype === stu1._proto_
Producción:
Prototipo: es un objeto especial, lo que significa que contiene atributos y comportamientos compartidos de las instancias. Es una forma de heredar propiedades de javascript, ya que está disponible en cada declaración de función.
Sintaxis:
objectTypeName.prototype.SharedPropertyName=value;
Ejemplo:
Javascript
// Constructor function function Student(name, age) { this.name = name; this.age = age; } // Objects var stu1 = new Student("gfg1", 25); var stu2 = new Student("gfg2", 42); // Prototype Student.prototype.getName = function() { return this.name; } // Function have property prototype // Student // Function call using object stu1.getName(); // Constructor function function Student(name, age) { this.name = name; this.age = age; } // Objects var stu1 = new Student("gfg1", 25); var stu2 = new Student("gfg2", 42); // Prototype Student.prototype.getName = function() { return this.name; } // Function have property prototype // Student // function call using object stu1.getName(); // Access prototype Student.prototype
Producción:
Diferencia entre proto y prototipo:
Prototipo |
prototipo |
Los prototipos son una forma sencilla de compartir el comportamiento y los datos entre varios objetos a los que se accede mediante .prototype |
proto también es una forma de compartir comportamiento y datos entre múltiples objetos accediendo usando __proto__ |
Todos los constructores de objetos (funciones) tienen propiedades prototipo. | Todos los objetos tienen propiedad proto. |
El prototipo da acceso al prototipo de función usando función. Sintaxis: (función.prototipo) |
proto da acceso al prototipo de la función usando el objeto. Sintaxis: (objeto.__proto__) |
Se usa principalmente para resolver problemas de desperdicio de memoria al crear un objeto en modo constructor, luego cada objeto tiene un comportamiento separado. |
Se utiliza en la string de búsqueda para resolver métodos, constructores, etc. |
Es propiedad de la clase. | Es propiedad de la instancia de esa clase. |
La propiedad prototipo está configurada para funcionar cuando se declara. Todas las funciones tienen una propiedad prototipo. |
propiedad proto que se establece en un objeto cuando se crea utilizando una nueva palabra clave. Todos los comportamientos de los objetos recién creados tienen protopropiedades. |
Se introduce en EcmaScript 6. | Se introduce en ECMAScript 5. |
También se le llama como .prototipo | También se le llama dunder proto. |
Se utiliza principalmente en javaScript. | Rara vez se usa en JavaScript. |
Publicación traducida automáticamente
Artículo escrito por surbhikumaridav y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA