arrays - desde - ¿Puede una matriz ser texto JSON de nivel superior?
aprender json desde cero (5)
Esto es de la especificación ECMAScript.
JSONText : JSONValue JSONValue : JSONNullLiteral JSONBooleanLiteral JSONObject JSONArray JSONString JSONNumber
por el debate en esta publicación: json-conversion-in-javascript
Sí, una matriz es legal como texto JSON de nivel superior.
Hay tres documentos estándar que definen JSON: RFC 4627 , RFC 7159 (que obsoleto RFC 4627) y ECMA-404 . Difieren en qué elementos de nivel superior permiten, pero todos permiten un objeto o una matriz como elemento de nivel superior.
- RFC 4627: Objeto o matriz.
"Un texto JSON es un objeto o matriz en serie". - RFC 7159: cualquier valor JSON.
"Un texto JSON es un valor serializado". - ECMA-404: Cualquier valor JSON.
"Un texto JSON es una secuencia de tokens formados a partir de puntos de código Unicode que se ajusta a la gramática de valores JSON".
Sí , pero en su lugar debería considerar hacer que la raíz sea un objeto en algunos escenarios, debido al secuestro de JSON . Esta es una vulnerabilidad de divulgación de información basada en anular el constructor de la matriz en JavaScript.