Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

188
Visualizações
inserción de matriz en una matriz asociativa de javascript

Estoy tratando de crear una matriz asociativa de fechas y estilo. Estoy esperando una matriz como

 { dates: [{day: 1, month: 12, year: 2021}, {day: 15, month: 12, year: 2021}], styleClass: 'test' },

y mi codigo es

 var markedDates = []; markedDates['dates'].push('day: 1, month: 12, year: 2021'); markedDates['dates'].push('day: 15, month: 12, year: 2021'); markedDates['styleClass'].push('test'); console.log(markedDates);

que devuelve error

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Problema 1: markedDates se han definido como una matriz ( [] ). Para definirlo como un objeto (que es lo que tiene como resultado esperado), use {} . (No hay tal cosa como una 'matriz asociativa' en JavaScript; las matrices usan 0 , 1 , etc. como índices. Los objetos usan 0 , 1 , key , another_key como índices [o claves, más precisamente]).

Problema 2: no ha definido la matriz de dates dentro de las fechas markedDates , lo que provocará un error de referencia.

Problema 3: está enviando cadenas a la matriz en lugar de objetos. Esto no generará un error, pero no producirá el resultado deseado.

Problema 4: está tratando de usar styleClass como una matriz; es solo una propiedad de cadena dentro de las markedDates .

Para corregir su código línea por línea (manteniendo la similitud con su código original):

 var markedDates = {}; markedDates.dates = []; markedDates.dates.push({day: 1, month: 12, year: 2021}); markedDates.dates.push({day: 15, month: 12, year: 2021}); markedDates.styleClass = "test"; console.log(markedDates);
 .as-console-wrapper { max-height: 100% !important; top: auto; }

Pero si tiene el resultado esperado definido estáticamente en la parte superior, puede asignarlo directamente a la variable como tal:

 var markedDates = { dates: [{ day: 1, month: 12, year: 2021 }, { day: 15, month: 12, year: 2021 }], styleClass: 'test' }; console.log(markedDates);

about 4 years ago · Juan Pablo Isaza Relatório

0

Cosas que debes considerar -

  1. Cree un objeto que deba ser empujado a la matriz más grande. Por ejemplo: markedDate en el siguiente código.
  2. La asignación de una cadena debe ser directamente con un operador igual a y no es necesario presionarlo, como en una matriz
  3. Inicialice las dates del campo interno como una matriz antes de insertarlo primero

 var markedDates = []; var markedDate = {}; markedDate['dates'] = []; markedDate['dates'].push({day: 1, month: 12, year: 2021}); markedDate['dates'].push({day: 15, month: 12, year: 2021}); markedDate['styleClass'] = 'test'; markedDates.push(markedDate); console.log(markedDates);

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda