Respuestas:
Todos los navegadores actuales tienen compatibilidad nativa con JSON incorporada. Por lo tanto, siempre y cuando no se trate de navegadores prehistóricos como IE6 / 7, puede hacerlo tan fácilmente como eso:
var j = {
"name": "binchen"
};
console.log(JSON.stringify(j));
JSON.stringify(j);
que el trabajo
var formattedJSON = JSON.stringify(j, null, 2);
Con JSON.stringify()
encontrado en json2.js o nativo en la mayoría de los navegadores modernos.
JSON.stringify(value, replacer, space) value any JavaScript value, usually an object or array. replacer an optional parameter that determines how object values are stringified for objects. It can be a function or an array of strings. space an optional parameter that specifies the indentation of nested structures. If it is omitted, the text will be packed without extra whitespace. If it is a number, it will specify the number of spaces to indent at each level. If it is a string (such as '\t' or ' '), it contains the characters used to indent at each level. This method produces a JSON text from a JavaScript value.
replacer
es opcional, por lo que si desea seguir utilizando el space
arg pones null
a replacer
. Si está interesado en usar esta función para una impresión bonita, esta respuesta también le resultó útil: stackoverflow.com/a/7220510/857209
Echa un vistazo actualizado / mejor manera por Thomas Frank:
Actualización 17 de mayo de 2008: pequeño desinfectante agregado al método toObject. Ahora toObject () no evaluará () la cadena si encuentra algún código malicioso en ella. Para aún más seguridad: No establezca el indicador includeFunctions en verdadero.
Douglas Crockford, padre del concepto JSON, escribió uno de los primeros stringifiers para JavaScript. Más tarde, Steve Yen, en Trim Path, escribió una versión mejorada que he usado durante algún tiempo. Son mis cambios a la versión de Steve los que me gustaría compartir con ustedes. Básicamente surgieron de mi deseo de hacer el stringifier:
- manejar y restaurar referencias cíclicas
- incluir el código JavaScript para funciones / métodos (como opción)
- excluya miembros del objeto de Object.prototype si es necesario.
Puede usar el método JSON.stringify () para convertir el objeto JSON en String.
var j={"name":"binchen"};
JSON.stringify(j)
Para el proceso inverso, puede usar el método JSON.parse () para convertir JSON String a JSON Object.
JSON.stringify(j, null, 4)
le daría JSON embellecido en caso de que necesite embellecimiento también
El segundo parámetro es el sustituto. Se puede usar como filtro, donde puede filtrar ciertos valores clave al encadenar. Si se establece en nulo, devolverá todos los pares de valores clave
En angular JS
angular.toJson(obj, pretty);
obj: entrada que se serializará en JSON.
bonito (opcional):
si se establece en verdadero, la salida JSON contendrá nuevas líneas y espacios en blanco. Si se establece en un entero, la salida JSON contendrá esa cantidad de espacios por sangría.
(predeterminado: 2)
Si está utilizando AngularJS, el filtro 'json' debería hacerlo:
<span>{{someObject | json}}</span>
JSON.stringify
convierte un objeto Javascript en texto JSON y almacena ese texto JSON en una cadena.
La conversión es un objeto a cadena
JSON.parse
convierte una cadena de texto JSON en un objeto Javascript.
La conversión es una cadena de objetos
var j={"name":"binchen"};
para convertirlo en una cadena JSON se podría utilizar el siguiente.
JSON.stringify({"key":"value"});
JSON.stringify({"name":"binchen"});
Para obtener más información, puede consultar este enlace a continuación.
https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify
Una costumbre definida para esto, hasta que lo hagamos extraño por el método stringify
var j={"name":"binchen","class":"awesome"};
var dq='"';
var json="{";
var last=Object.keys(j).length;
var count=0;
for(x in j)
{
json += dq+x+dq+":"+dq+j[x]+dq;
count++;
if(count<last)
json +=",";
}
json+="}";
document.write(json);
SALIDA
{"name":"binchen","class":"awesome"}
Estaba teniendo problemas con la falta de memoria de stringify y otras soluciones no parecían funcionar (al menos no pude hacer que funcionaran), que fue cuando me topé con este hilo. Gracias a Rohit Kumar , solo recorro mi gran objeto JSON para evitar que se bloquee
var j = MyObject;
var myObjectStringify = "{\"MyObject\":[";
var last = j.length
var count = 0;
for (x in j) {
MyObjectStringify += JSON.stringify(j[x]);
count++;
if (count < last)
MyObjectStringify += ",";
}
MyObjectStringify += "]}";
MyObjectStringify le daría su representación de cadena (tal como se mencionó otras veces en este hilo), excepto que si tiene un objeto grande, esto también debería funcionar, solo asegúrese de construirlo para satisfacer sus necesidades , necesitaba que tuviera un nombre que matriz
Woking ... Fácil de usar
$("form").submit(function(evt){
evt.preventDefault();
var formData = $("form").serializeArray(); // Create array of object
var jsonConvert = JSON.stringify(formData); // Convert to json
});
Gracias
puedes usar la función stringify nativa como esta
const j={ "name": "binchen" }
/** convert json to string */
const jsonString = JSON.stringify(j)
console.log(jsonString) // {"name":"binchen"}
si desea obtener el valor de las propiedades json en formato de cadena, use la siguiente manera
var i = {"x":1}
var j = JSON.stringify(i.x);
var k = JSON.stringify(i);
console.log(j);
"1"
console.log(k);
'{"x":1}'
Para la depuración en Node JS puede usar util.inspect () . Funciona mejor con referencias circulares.
var util = require('util');
var j = {name: "binchen"};
console.log(util.inspect(j));
Los reemplazos JSON existentes eran demasiado para mí, así que escribí mi propia función. Esto parece funcionar, pero podría haber pasado por alto varios casos extremos (que no ocurren en mi proyecto). Y probablemente no funcionará para ningún objeto preexistente, solo para datos de fabricación propia.
function simpleJSONstringify(obj) {
var prop, str, val,
isArray = obj instanceof Array;
if (typeof obj !== "object") return false;
str = isArray ? "[" : "{";
function quote(str) {
if (typeof str !== "string") str = str.toString();
return str.match(/^\".*\"$/) ? str : '"' + str.replace(/"/g, '\\"') + '"'
}
for (prop in obj) {
if (!isArray) {
// quote property
str += quote(prop) + ": ";
}
// quote value
val = obj[prop];
str += typeof val === "object" ? simpleJSONstringify(val) : quote(val);
str += ", ";
}
// Remove last colon, close bracket
str = str.substr(0, str.length - 2) + ( isArray ? "]" : "}" );
return str;
}
So in order to convert a js object to JSON String:
La sintaxis simple para convertir un objeto en una cadena es
JSON.stringify(value)
La sintaxis completa es: JSON.stringify (valor [, sustituto [, espacio]])
Veamos algunos ejemplos simples. Tenga en cuenta que toda la cadena obtiene comillas dobles y todos los datos en la cadena se escapan si es necesario.
JSON.stringify("foo bar"); // ""foo bar""
JSON.stringify(["foo", "bar"]); // "["foo","bar"]"
JSON.stringify({}); // '{}'
JSON.stringify({'foo':true, 'baz':false}); /* "
{"foo":true,"baz":false}" */
const obj = { "property1":"value1", "property2":"value2"};
const JSON_response = JSON.stringify(obj);
console.log(JSON_response);/*"{ "property1":"value1",
"property2":"value2"}"*/
Solo use JSON.stringify
para hacer tal conversión; sin embargo, recuerde que los campos que tienen undefined
valor no se incluirán en json
var j={"name":"binchen", "remember":undefined, "age": null };
var s=JSON.stringify(j);
console.log(s);
El campo remember
'desaparecer' de la salida json
Puede usar el método JSON.stringify () para convertir el objeto JSON en String.
var j={"name":"hello world"};
JSON.stringify(j);
Para convertir esta cadena de nuevo a objeto json, puede usar el método JSON.parse ().
utilizar JSON.stringify(param1, param2, param3);
Que es: -
param1 -> valor para convertir a JSON
param2 -> función para stringificar a su manera. Alternativamente, sirve como una lista blanca para los objetos que deben incluirse en el JSON final.
param3 -> Un tipo de datos de Número que indica el número de espacios en blanco para agregar. El máximo permitido son 10.
convertir str => obj
const onePlusStr = '[{"marca": "oneplus"}, {"modelo": "7T"}]';
const onePLusObj = JSON.parse (onePlusStr);
convertir obj => str
const onePLusObjToStr = JSON.stringify (onePlusStr);
Referencias de análisis JSON en JS:
JSON.parse (): haga clic en
JSON.stringify (): haga clic en
Usa la función stringify
var j = {
"name":"binchen"
};
var j_json = JSON.stringify(j);
console.log("j in json object format :", j_json);
Feliz codificación !!!
//use JSON.stringify({})
const stringified = JSON.stringify ({}) // pasa el objeto que quieres convertir en formato de cadena
si tiene una cadena json y no está envuelta con [], envuélvala primero
var str = '{"city": "Tampa", "state": "Florida"}, {"city": "Charlotte", "state": "North Carolina"}';
str = '[' + str + ']';
var jsonobj = $.parseJSON(str);
O
var jsonobj = eval('(' + str + ')');
console.log(jsonobj);
JSON.stringify()
es el método que estás buscando.