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

286
Views
'[Objeto de objeto], [Objeto de objeto]' no se analiza ni se modifica (nodo js, mangosta, ejs)

Así que estoy creando este juego de preguntas. Tengo un archivo ejs en una ruta, donde recopilo preguntas y respuestas con el elemento de entrada, y al hacer clic en el botón Enviar, se crea una matriz que contiene muchos objetos, uno para cada pregunta y para sus respuestas. y luego esta matriz se configura para que sea el valor del botón de envío, que está envuelto en un formulario que lo llevará a /creado con un método de publicación. Entonces quiero usar la matriz en server.js, donde estoy manejando rutas; lo estoy haciendo con req.body.name, que es el nombre del botón de envío. La cuestión es que estaba obteniendo esto: ['[objeto Objeto], [objeto Objeto]'] Entonces, después de buscar, descubrí que, en primer lugar, para agregar los objetos a la matriz, en el archivo ejs, debería ser usando array.push(JSON.stringify(obj)). Hice eso, y esto es lo que recibí:

 [ '{"question":"question1","answers":[{"text":"asnwer1","correct":true},{"text":"asnwer2","correct":false}]},{"question":"question2","answers":[{"text":"asnwer3","correct":true},{"text":"asnwer4","correct":false}]}' ]

Y esto no es lo que quiero obtener, quiero tener una matriz con dos objetos js separados, no json, y no quiero que todo sea weapper con ''. quiero que sea:

 [ {question:"question1", answers: [{text:"asnwer1",correct:true}, {text:"asnwer2",correct:false} ]}, {question:"question2", answers:[ {text:"asnwer3",correct:true}, {text:"asnwer4",correct:false} ]} ]

entonces en server.js donde estoy manejando rutas, usé: let bla = JSON.parse (req.body.name) Pero obtengo:

SyntaxError: Unexpected token , in JSON at position 105

Creo que hay muchos errores que estoy cometiendo, así que por favor ayuda...

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

JSON.parse() analiza el objeto JSON y lo convierte en objeto javascript. Tiene una cadena de colección de objetos separados por comas, por eso JSON.parse arroja un error. Solo puede analizar objetos JSON, no comas. Entonces, debe eliminar esas comas, dividirlas en objetos y luego analizarlas.

La solución de demostración estará a continuación para dividir y luego analizar cada objeto y actualizarlo en una matriz

 let array = [ '{"question":"question1","answers":[{"text":"asnwer1","correct":true},{"text":"asnwer2","correct":false}]},{"question":"question2","answers":[{"text":"asnwer3","correct":true},{"text":"asnwer4","correct":false}]}' ] var arrayAfterSplit = array[0].split(',{"question"') for(let i = 0;i<arrayAfterSplit.length;i++) { if(i > 0) { arrayAfterSplit[i] = '{"question"'+arrayAfterSplit[i]; } arrayAfterSplit[i] = JSON.parse(arrayAfterSplit[i]) // console.log(arrayAfterSplit[i]) } console.log(arrayAfterSplit)
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!