¿Existe una función rápida para convertir objetos JSON recibidos a través de jQuery getJSON
en un volcado de variable de cadena (para fines de seguimiento/depuración)?Volcado de variable JSON a string
Respuesta
Sí, JSON.stringify
, se puede encontrar here, es included en Firefox 3.5.4 y superiores.
Un secuenciador JSON va en la dirección opuesta, convirtiendo estructuras de datos JavaScript en texto JSON. JSON no admite estructuras de datos cíclicos, por lo que debe tener cuidado de no dar estructuras cíclicas al secuenciador JSON.https://web.archive.org/web/20100611210643/http://www.json.org/js.html
var myJSONText = JSON.stringify(myObject, replacer);
Puede utilizar console.log()
en Firebug o Chrome para obtener una buena vista de objetos de aquí, de esta manera:
$.getJSON('my.json', function(data) {
console.log(data);
});
Si lo que desea es vista la cadena, mira el Resource view in Chrome o la Net view in Firebug para ver la respuesta de cadena real del servidor (no es necesario convertirla ... la recibiste de esta manera).
Si usted quiere tomar esa cadena y descomponerlo para una fácil visualización, hay una excelente herramienta aquí: http://json.parser.online.fr/
Yo personalmente uso del montón jquery dump plugin para volcar los objetos, su función() poco similar a print_r de php Uso básico:
var obj = {
hubba: "Some string...",
bubba: 12.5,
dubba: ["One", "Two", "Three"]
}
$("#dump").append($.dump(obj));
/* will return:
Object {
hubba: "Some string..."
bubba: 12.5
dubba: Array (
0 => "One"
1 => "Two"
2 => "Three"
)
}
*/
Es muy legible, también recomiendo este sitio http://json.parser.online.fr/ para crear/analizar/leer json, porque tiene bonitos colores
esto es realmente genial, pero requiere instalar otro plugin (y solo para depuración) – ina
sí, lo sé ... pero cuando estoy buscando respuestas, a menudo encuentro algo útil en las respuestas porque mi problema está relacionado con el problema. este plugin podría ser un poco exagerado cuando tienes un problema simple: P – Ties
Aquí está el código que uso. Debería poder adaptarlo a sus necesidades.
function process_test_json() {
var jsonDataArr = { "Errors":[],"Success":true,"Data":{"step0":{"collectionNameStr":"dei_ideas_org_Private","url_root":"http:\/\/192.168.1.128:8500\/dei-ideas_org\/","collectionPathStr":"C:\\ColdFusion8\\wwwroot\\dei-ideas_org\\wwwrootchapter0-2\\verity_collections\\","writeVerityLastFileNameStr":"C:\\ColdFusion8\\wwwroot\\dei-ideas_org\\wwwroot\\chapter0-2\\VerityLastFileName.txt","doneFlag":false,"state_dbrec":{},"errorMsgStr":"","fileroot":"C:\\ColdFusion8\\wwwroot\\dei-ideas_org\\wwwroot"}}};
var htmlStr= "<h3 class='recurse_title'>[jsonDataArr] struct is</h3> " + recurse(jsonDataArr);
alert(htmlStr);
$(document.createElement('div')).attr("class", "main_div").html(htmlStr).appendTo('div#out');
$("div#outAsHtml").text($("div#out").html());
}
function recurse(data) {
var htmlRetStr = "<ul class='recurseObj' >";
for (var key in data) {
if (typeof(data[key])== 'object' && data[key] != null) {
htmlRetStr += "<li class='keyObj' ><strong>" + key + ":</strong><ul class='recurseSubObj' >";
htmlRetStr += recurse(data[key]);
htmlRetStr += '</ul ></li >';
} else {
htmlRetStr += ("<li class='keyStr' ><strong>" + key + ': </strong>"' + data[key] + '"</li >');
}
};
htmlRetStr += '</ul >';
return(htmlRetStr);
}
</script>
</head><body>
<button onclick="process_test_json()" >Run process_test_json()</button>
<div id="out"></div>
<div id="outAsHtml"></div>
</body>
Esto me ayudó :)) – coding
algo de esto?
function dump(x, indent) {
var indent = indent || '';
var s = '';
if (Array.isArray(x)) {
s += '[';
for (var i=0; i<x.length; i++) {
s += dump(x[i], indent)
if (i < x.length-1) s += ', ';
}
s +=']';
} else if (x === null) {
s = 'NULL';
} else switch(typeof x) {
case 'undefined':
s += 'UNDEFINED';
break;
case 'object':
s += "{ ";
var first = true;
for (var p in x) {
if (!first) s += indent + ' ';
s += p + ': ';
s += dump(x[p], indent + ' ');
s += "\n"
first = false;
}
s += '}';
break;
case 'boolean':
s += (x) ? 'TRUE' : 'FALSE';
break;
case 'number':
s += x;
break;
case 'string':
s += '"' + x + '"';
break;
case 'function':
s += '<FUNCTION>';
break;
default:
s += x;
break;
}
return s;
}
- 1. carga JSON/volcado en Python
- 2. Map <String, String> JSON en
- 3. C++ String Variable Declaration
- 4. JSON String to Rails hash
- 5. return string variable from Main()
- 6. Lectura de JSon String con Gson
- 7. ¿Cómo convertir datatable a json string usando json.net?
- 8. Cómo analizar json string en Android?
- 9. JSON String tidy/formateador para Java
- 10. Variable insensible a mayúsculas/minúsculas para String replaceTodo (,) método Java
- 11. JSONArray a string array
- 12. Jackson Deserialize variable como JSON cadena
- 13. Variable en la ruta JSON
- 14. carga json en la variable
- 15. Diferencia entre String [] a y String ... a
- 16. Volcado de CouchDB a archivo y carga desde el archivo
- 17. PHP JSON String, escape Citas dobles para la salida JS
- 18. Acceso a una variable JSON prerreglada con un hash (#)
- 19. ¿Cómo accedo a un objeto JSON utilizando una variable javascript
- 20. Obtiene String de json con objeto json anidado y matrices json anidadas con objeto json múltiple, en Android
- 21. deserializar variable de tipo matriz JSON usando DataContractJsonSerializer
- 22. Volcado de html crudo a una cuadrícula Telerik
- 23. casting ArrayList <String> a String []
- 24. Envío de una matriz JSON para ser recibido como un Dictionary <string, string>
- 25. Estableciendo un valor de variable std :: string de gdb?
- 26. Serialización de un objeto scala en un JSon String usando lift-json
- 27. Jquery - Almacene respuesta jSON Ajax como variable
- 28. Convierta un volcado de PostgreSQL en un volcado de MySQL
- 29. Clase JSON a Java
- 30. Python: ¿Convertir de Tuple a String?
Pregunta tonta: ¿por qué se marcó como spam? – ina
por el mismo motivo por el que mis preguntas reciben votos negativos, ¡a veces los usuarios son inexactos con sus clics! –