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

123
Vistas
Escriba anotaciones en mecanografiado
interface Test { name: string; age: number; } const subjectObj = { name: "Harhsit Singh", age: 17, height: "6'1", }; const testObj: Test = subjectObj; //? NO ERROR const testObj2: Test = { name: "Harhsit Singh", age: 17, height: "6'1", //! ERROR };

Creé una interface test como se muestra en la imagen, y un sujeto de prueba llamado subjectObj y contiene más propiedades que las que contiene la test de tipo.

Ahora asigné mi subjectObj a la constante testObj de tipo test , luego declaré otra constante testObj2 con el mismo tipo test y le asigné el mismo objeto, pero esta vez lo inicialicé con un nuevo objeto de la misma estructura que subjectObj .

Pero ahora me da un error de que 'height' does not exist in type 'test' , pero no dio ningún error cuando pasé subjectObj como referencia a testObj aunque también contiene la propiedad height .

No sé por qué sucede esto, así que necesito una explicación detallada.

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

0

La verificación de propiedades en exceso ocurre solo cuando pasa literales de objetos: cuando pasa tipos, se encuentra con el hecho de que TS nunca verifica los tipos exactos y asume que un objeto con tipos en exceso es lo que quiere decir.

Eso se debe realmente a la cultura JS en la que TS está integrado. De lo contrario, sería muy difícil codificar en TS contra las interfaces JS.

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