Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

224
Views
JSON - TypeError no capturado: no se pueden leer las propiedades de undefined (leyendo '0')

Recibo este error "Error de tipo no detectado: no se pueden leer las propiedades de undefined (leyendo '0')" cuando intento devolver el .Name de mi JSON .

Aquí está mi javascript (el archivo console.log es para probar):

 var roomsCodes = [ ['232','DDSB'], ['232','DDMB'], ['232','SJJB'], ['232','SJJS'], ]; var jsonMin = { "DDSB": { "Name": "Doble Estándar", }, "DDMB": { "Name": "Doble con vista mar", }, "SJJB": { "Name": "Jr. Suite", }, "SJJS": { "Name": "Jr. Suite Superior", }, } for(var p = 0; p < roomsCodes.length; p++){ if(232 == roomsCodes[p][0]){ console.log(jsonMin.roomsCodes[p][1].Name); } }
about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Puede solucionarlo usando [] para acceder al objeto, así:

 var roomsCodes = [ ["232", "DDSB"], ["232", "DDMB"], ["232", "SJJB"], ["232", "SJJS"] ]; var jsonMin = { DDSB: { Name: "Doble Estándar" }, DDMB: { Name: "Doble con vista mar" }, SJJB: { Name: "Jr. Suite" }, SJJS: { Name: "Jr. Suite Superior" } }; for (var p = 0; p < roomsCodes.length; ++p) { if (232 == roomsCodes[p][0]) { console.log(jsonMin[roomsCodes[p][1]].Name); } }

Cuando desee acceder a una propiedad usando una variable dinámica, debe usar corchetes; de lo contrario, puede usar el punto.

about 4 years ago · Juan Pablo Isaza Report

0

 var roomsCodes = [ ['232','DDSB'], ['232','DDMB'], ['232','SJJB'], ['232','SJJS'], ]; var jsonMin = { "DDSB": { Name: "Doble Estándar", }, "DDMB": { Name: "Doble con vista mar", }, "SJJB": { Name: "Jr. Suite", }, "SJJS": { Name: "Jr. Suite Superior", }, } for(var p = 0; p < roomsCodes.length; p++){ if(232 == roomsCodes[p][0]){ const item = roomsCodes[p][1] console.log(jsonMin[item].Name) } }

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!