1

Quiero convertir un JSON a un objeto javascript pero me da este error:

Uncaught SyntaxError: Unexpected token o in JSON at position 1 at JSON.parse () at convertirJsontoObjetoJS (Test_JSON-serializacion.js:23) at onload (Text_html.html:15)

No sé que porque me sale eso, aquí adjunto el código :

var JSONString2 = {"altura": 1.20, "edad": 5, "colorOjos": "cafe"};

var objetoJS = JSON.parse(JSONString2);
console.log(objetoJS);
for (i in objetoJS) {
    document.write("Propiedad " + i + " : " + objetoJS[i] + "<br>");
}
J. Castro
  • 2,477
  • 7
  • 18
  • 31

2 Answers2

1

Para ingresar a los datos de un Json.

    let JSONString2 = {
      "altura": 1.20,
      "edad": 20,
      "colorOjos": "cafe"
    }

    console.log(JSONString2.edad)

%otra forma de recorrer el json

for (let dato in JSONString2){
  console.log(JSONString2[dato])
}
  • estas equivocado JSON no es lo mismo que un OBJETO, te invito a documentarte en esta publicación https://es.stackoverflow.com/questions/164943/cu%C3%A1l-es-la-diferencia-entre-json-y-un-objeto-en-javascript –  Dec 11 '18 at 02:15
  • te invito a leer, editar y quitar esa afirmación que no es correcta –  Dec 11 '18 at 02:16
  • tiene toda la razón gracias por el dato – Alan Moreno Dec 11 '18 at 02:19
0

El error es que estás tratando de interpretar un objeto de javascript como un JSON.

La función JSON.parse recibe como parámetro una cadena, y lo que tu le estabas mandando ya era un objeto.

eso lo compruebas fácil observando que:

var JSONString2 = {
  "altura": 1.20,
  "edad": 5,
  "colorOjos": "cafe"
};
console.log(typeof JSONString2);
var JSONString2 = `{
  "altura": 1.20,
  "edad": 5,
  "colorOjos": "cafe"
}`;
console.log(typeof JSONString2);

Por lo tanto tu ejemplo ya corregido queda:

var JSONString2 = `{"altura": "1.20", "edad": "5", "colorOjos": "cafe"}`;
var objetoJS = JSON.parse(JSONString2);
console.log(objetoJS);

for (i in objetoJS) {
  document.write("Propiedad " + i + " : " + objetoJS[i] + "<br>");
}
Ruslan López
  • 10,060
  • 11
  • 35
  • 68
  • Gracias Rusian , lo logré solucionar con tu ayuda , recién estoy comenzando a aprender JSON , por eso no la tenía tan clara . Gracias por tu ayuda nuevamente . – Giafir Anthony Fenco Garnique Dec 11 '18 at 02:53
  • @GiafirAnthonyFencoGarnique entonces si gustas puedes aceptar la respuesta dando click en el icono de la palomita que sale junto para que otras personas sepan como resolver este problema si lo buscan – Ruslan López Dec 11 '18 at 02:54