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
¿Es malo tener "número" como claves de objeto?

Acabo de buscar a través de SO y parece que todos están de acuerdo con la idea de que JavaScript y TypeScript no admiten el uso directo de números como claves en un objeto. Pero de alguna manera, mi compañero desarrollador ha usado algunos objetos con claves numéricas en nuestro proyecto Angular que funcionan tan bien como otros objetos. Esto es lo que parecen.

 { 1: 1, 2: 0, 3: 2 }

Y llamar al valor en una forma como obj[2] no tiene ningún problema en este momento. Solo me preguntaba si es la forma correcta de hacerlo y qué tan bien se admite este uso.

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

0

Está bien, como en - es legal , ya que es cómo funcionan las matrices, aunque una cosa a tener en cuenta es que las matrices garantizarán que la clave sea incremental, comenzando en 0, mientras que una clave numérica en un objeto no lo hará, y SERÁ engañosa para otros desarrolladores cuando no pueden entender por qué obj[1] no siempre vive al lado de obj[2], etc., y con eso me refiero al uso de bucles internos, etc. y simplemente incrementando el índice en uno cada vez. Entonces, personalmente, no lo recomendaría debido a que parece una matriz, pero en realidad no es una matriz...

Lado: si está tratando de imitar una matriz, pero quiere un índice que comience en 1, simplemente use una matriz como de costumbre y haga que su código solo maneje el desplazamiento cada vez. Las matrices vienen con muchas funciones, como length , sort , find , etc., que un objeto no

about 4 years ago · Juan Pablo Isaza Denunciar

0

En javascript, las claves en el objeto son de tipo cadena y si tiene obj[1] , se convertirá automáticamente en obj['1'] pero no lo mismo en el Map

 const obj = {} obj[1] = 'one'; console.log(obj[1]); // output: "one" console.log(obj['1']); // output: "one" obj['1'] = 'one string'; console.log(obj[1]); // output: "one string" console.log(obj['1']); // output: "one string" const map = new Map(); map.set(1, 'one'); map.set('1', 'one string'); console.log(map.get(1)); // output: "one" console.log(map.get('1')); // output: "one string"
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