parse - JQuery Parsing JSON array
string to json javascript (5)
Use el método parseJSON
:
var json = ''["City1","City2","City3"]'';
var arr = $.parseJSON(json);
Entonces tienes una matriz con los nombres de las ciudades.
Tengo un resultado JSON
como el siguiente:
["City1","City2","City3"]
Quiero obtener cada uno de los nombres de las ciudades, ¿cómo puedo hacer esto?
$.getJSON("url_with_json_here",function(json){
});
EDITAR:
$.getJSON(''url_here'', function(data){
$.each(data, function (index, value) {
$(''#results'').append(''<p>''+value+''</p>'');
console.log(value);
});
});
Lo anterior no parece estar funcionando, no se generan valores.
con parse.JSON
var obj = jQuery.parseJSON( ''{ "name": "John" }'' );
alert( obj.name === "John" );
getJSON()
también analizará el JSON después de la búsqueda, por lo tanto, a partir de ese momento, estará trabajando con una matriz JavaScript simple ( []
marca una matriz en JSON). La documentación también contiene ejemplos sobre cómo manejar los datos obtenidos.
Puede obtener todos los valores en una matriz usando un ciclo for
:
$.getJSON("url_with_json_here", function(data){
for (var i = 0, len = data.length; i < len; i++) {
console.log(data[i]);
}
});
Verifique su consola para ver la salida ( Chrome , Firefox/Firebug , IE ).
jQuery también proporciona $.each()
para las iteraciones, por lo que también podría hacer esto:
$.getJSON("url_with_json_here", function(data){
$.each(data, function (index, value) {
console.log(value);
});
});
var dataArray = [];
var obj = jQuery.parseJSON(response);
for( key in obj )
dataArray.push([key.toString(), obj [key]]);
};
var dataArray = [];
var obj = jQuery.parseJSON(yourInput);
$.each(obj, function (index, value) {
dataArray.push([value["yourID"].toString(), value["yourValue"] ]);
});
esto me ayuda mucho :-)