print array javascript jquery json arrays

array - return json javascript



Convertir matriz a JSON (6)

Decidí usar la biblioteca json2 y obtuve un error sobre "estructuras de datos cíclicos".

Lo resolví diciéndole a json2 cómo convertir mi objeto complejo. No solo funciona ahora, sino que también he incluido solo los campos que necesito. Así es como lo hice:

OBJ.prototype.toJSON = function (key) { var returnObj = new Object(); returnObj.devid = this.devid; returnObj.name = this.name; returnObj.speed = this.speed; returnObj.status = this.status; return returnObj; }

Tengo una matriz ( var cars = [] ) que contiene algunos enteros. He agregado algunos valores a la matriz, pero ahora necesito enviar esta matriz a una página a través del método .get de jQuery. ¿Cómo puedo convertirlo en un objeto JSON para enviar?


Lo hice de esa manera:

si tengo:

var jsonArg1 = new Object(); jsonArg1.name = ''calc this''; jsonArg1.value = 3.1415; var jsonArg2 = new Object(); jsonArg2.name = ''calc this again''; jsonArg2.value = 2.73; var pluginArrayArg = new Array(); pluginArrayArg.push(jsonArg1); pluginArrayArg.push(jsonArg2);

para convertir pluginArrayArg (que es una matriz javascript pura) en una matriz JSON:

var jsonArray = JSON.parse(JSON.stringify(pluginArrayArg))


O intente definir la matriz como un objeto. (var cars = {};) Entonces no hay necesidad de convertir a json. Esto podría no ser práctico en su ejemplo, pero funcionó bien para mí.


Script para compatibilidad con versiones anteriores: https://github.com/douglascrockford/JSON-js/blob/master/json2.js

Y llama:

var myJsonString = JSON.stringify(yourArray);

Nota: el objeto JSON ahora forma parte de la mayoría de los navegadores web modernos (IE 8 y superiores). Vea caniuse para la lista completa. El crédito es para: @Spudley por su comentario a continuación


Si solo tiene 1 objeto como el que pidió, lo siguiente funcionará.

var x = [{''a'':''b''}]; var b= JSON.stringify(x); var c = b.substring(1,b.length-1); JSON.parse(c);


Wow, parece que ahora es mucho más fácil ... 3 formas en que puedes hacerlo:

json = { ...array }; json = Object.assign({}, array); json = array.reduce((json, value, key) => { json[key] = value; return json; }, {});