2011-06-24 34 views
8

He siguiente código jQuery/JSqué parseJSON devuelve null

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script> 
<script> 
    $.getJSON("http://example/topics", {}, function(data){ 
      console.log(data); // display the JSON *data* in the web console 
      console.log($.parseJSON(data)); 
    }); 
</script> 

console.log (datos) muestra datos JSON dentro consola de Firebug (Complemento de Firefox), pero console.log ($. parseJSON (datos)) muestra null.

lo que podría ser una razón.

Necesito convertir una cadena JSON en una matriz.

Respuesta

21

Supongo que porque $.getJSON ya analizó los datos. data es un objeto Javascript.

La devolución de llamada success se pasa los datos devueltos, que es típicamente un objeto JavaScript o matriz tal como se define por la estructura JSON y analizada usando el método $.parseJSON().

Por supuesto podríamos decir más si nos muestra la salida, pero normalmente, $.getJSON ya analiza la respuesta.

P.S .: Espero que utilice una URL adecuada en su código real.

Cuestiones relacionadas