Decir que tengo una serie como esta: {id, valor}
Eso no es una matriz. Ese es un objeto. Puede múltiples copias de los de una matriz:
[
{"foo": "bar"},
{"foo": "baz"},
{"foo": "boom"}
]
Esa es una JSON cadena válida para una matriz que contiene objetos — en este caso, los objetos con una sola propiedad, foo
, cada uno de los cuales tiene su propio valor, pero los objetos no tienen que tener las mismas propiedades, y pueden tener propiedades múltiples. Por ejemplo:
[
{},
["zero", "one", "two", "three"],
"I'm just a string",
{
"f0": "foo zero",
"f1": "foo one",
"f2": "foo two",
"all": ["foo zero", "foo one", "foo two"]
},
42
]
Eso es una cadena JSON válida para una matriz con cinco entradas:
- Un objeto sin propiedades (por ejemplo, un objeto "en blanco").
- Una matriz con cuatro entradas.
- Una cadena.
- Un objeto con cuatro propiedades:
f0
, f1
, f2
y all
. f0
, f1
y f2
tienen valores de cadena; all
tiene una matriz de cadenas como valor.
- The answer a la vida, el universo y todo.
Puede convertir un objeto o matriz en una cadena JSON válida (stringify), e invertir el proceso (analizar) desde el lado del cliente utilizando cualquiera de varias bibliotecas. Crockford (el inventor de JSON) tiene varios en his github page, más notablemente json2.js aunque json2.js se basa en eval
para analizar; como eso no es realmente ideal, puede usar json_parse.js
(un analizador de bajadas recursivo que no usa eval
) o json_parse_state.js
(una máquina de estados que no usa eval
).
Solo tenga en cuenta que solo puede almacenar hasta 4 KB por cookies. También tenga en cuenta que cuanto más grandes sean sus cookies, más datos tendrá que enviar el cliente cuando realice las solicitudes. –