Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

115
Vistas
¿Son estas propiedades heredadas?

Estoy aprendiendo sobre propiedades heredadas y estoy bastante confundido. Agradecería mucho su ayuda para aclararme un poco.

Entonces, una propiedad heredada es una propiedad que el objeto hereda del objeto prototipo.

Un artículo que leí dio un ejemplo de una propiedad heredada: "cada objeto JavaScript hereda la propiedad toString de su objeto prototipo"

Entonces, mi pregunta es: ¿Son todas estas propiedades heredadas?

  • Métodos estáticos

    Objeto.assign()

    Objeto.crear()

    Objeto.defineProperty()

    Objeto.defineProperties()

    Objeto.entradas()

    Objeto.congelar()

    Objeto.fromEntries()

    Objeto.getOwnPropertyDescriptor()

    Objeto.getOwnPropertyDescriptors()

    Objeto.getOwnPropertyNames()

    Objeto.getOwnPropertySymbols()

    Objeto.getPrototypeOf()

    Objeto.es()

    Objeto.esExtensible()

    Objeto.está congelado()

    Objeto.está sellado()

    Objeto.claves()

    Objeto.prevenirExtensiones()

    Objeto.sello()

    Objeto.setPrototypeOf()

    Objeto.valores()

    Propiedades de instancia

    Objeto.prototipo.constructor

    Objeto.prototipo. prototipo

    Métodos de instancia

    Objeto.prototipo. defineGetter ()

    Objeto.prototipo. defineSetter ()

    Objeto.prototipo. buscarGetter ()

    Objeto.prototipo. Setter de búsqueda ()

    Objeto.prototipo.hasOwnProperty()

    Objeto.prototipo.isPrototypeOf()

    Objeto.prototipo.propiedadIsEnumerable()

    Objeto.prototipo.toLocaleString()

    Objeto.prototipo.toString()

    Objeto.prototipo.valorDe()

(Encontré esta lista de objetos MDN, son métodos estáticos, propiedades de instancia y métodos de instancia de objetos, https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object )

Y entonces, ¿eso significa que todos los objetos tienen las propiedades anteriores?

Y dado que las funciones son básicamente objetos, ¿las funciones también las heredaron?

Además, ¿hay algún lugar donde pueda encontrar la lista de todas las propiedades heredadas que tienen los objetos?

¡Muchas gracias de antemano! lo siento por la publicación larga.

about 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Los métodos estáticos no se pueden heredar porque existen en la clase y no en ninguna instancia de una clase. Así que esos están fuera. ¡Los otros métodos, absolutamente! Al menos eso pienso. Hagamos algunos experimentos y verifiquemos los resultados.

 const f = () => { return "hello world" }; f.foo = "bar"; console.log(f.constructor); console.log(f.toString()); console.log(f.valueOf()); console.log(f.hasOwnProperty("foo")); console.log(f.hasOwnProperty("frankincense"));

Este fragmento indica que, sí, de hecho, las funciones heredan los métodos no estáticos, porque las funciones son objetos... mientras Crockford se revuelve en su tumba.

about 4 years ago · Santiago Trujillo Denunciar

0

Los métodos estáticos pertenecen solo a la clase Object (función constructora), lo que significa que solo puede llamarlos haciendo Object.nameOfMethod() .

Las propiedades y métodos de instancia, por otro lado, son heredados por todas las instancias de Object, lo que significa que cada objeto heredará esos accesorios/métodos.

Ahora recuerda que en JS cada entidad, si no es una primitiva, es un objeto.

Por ejemplo una matriz:

 const arr = ["hello"] console.log(typeof arr) // object console.log(arr instanceof Object) // true console.log(Array.prototype.isPrototypeOf(arr)) // true console.log(arr.propertyIsEnumerable(0)) // true console.log(arr.toLocaleString()) // hello console.log(arr.valueOf()) // ["hello"] console.log(arr.hasOwnProperty(0)) // true console.log(arr.toString()) // hello

Esto se debe a que incluso si las matrices en JS son instancias de Array , también son instancias de Object , puede ver una matriz como un objeto especial donde los índices son claves:

 const arr = { 0: "hello" }
about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda