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

230
Vistas
¿Por qué el .__proto__ del objeto base en Javascript es nulo en lugar de indefinido?
var a = {}; console.log(a.__proto__); // shows the base object console.log(a.__proto__.__proto__); // shows the prototype of the base object as "null".

¿Por qué no está indefinido (ya que nunca se declara como una propiedad en el objeto base)?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

null indica una ausencia intencional de un valor, normalmente de un valor de objeto. De la especificación :

valor nulo

valor primitivo que representa la ausencia intencional de cualquier valor de objeto

En contraste, para undefined dice :

valor indefinido

valor primitivo utilizado cuando a una variable no se le ha asignado un valor

El prototipo de Object.prototype está configurado intencionalmente para indicar que no hay prototipo, y los objetos prototipo por separado son, bueno, objetos, por lo que null para "sin objeto" tiene más sentido.


Dicho esto, tenga cuidado con las preguntas "por qué" con JavaScript, porque aunque la mayoría de ellas tienen explicaciones perfectamente razonables, algunas de las cosas más extrañas se reducen a "Porque eso es lo que Brendan Eich pensó que debería hacer en ese momento" y/o " Debido a que hubo un error en la implementación original que fue copiado por otras implementaciones y no se podía cambiar sin romper el código existente, por lo que tuvo que incluirse en la especificación". (Por ejemplo, es por eso que typeof null es "object" en lugar de "null" .) No estoy diciendo que no haga preguntas con "por qué", porque, de nuevo, a menudo hay una buena razón que puede conducir a una mejor comprensión del idioma. Solo ten en cuenta que a veces, bueno, simplemente no lo hay.😀

about 4 years ago · Juan Pablo Isaza 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