recorrer parse mostrar leer externo ejemplo datos create con array javascript json

parse - mostrar datos json javascript



Diferencia entre JSON.stringify y JSON.parse (15)

Cadena JSON del objeto JavaScript <->

JSON.stringify() <-> JSON.parse()

JSON.stringify (obj): toma cualquier objeto serializable y devuelve la representación JSON como una cadena.

JSON.stringify() -> Object To String.

JSON.parse (cadena): toma una cadena JSON bien formada y devuelve el objeto JavaScript correspondiente.

JSON.parse() -> String To Object.

Explicación: JSON.stringify (obj [, reemplazo [, espacio]]);

Reemplazador / espacio: opcional o toma un valor entero o puede llamar a la función de retorno de tipo de enterrador.

function replacer(key, value) { if (typeof value === ''number'' && !isFinite(value)) { return String(value); } return value; }

  • Reemplazo Just Use para reemplazar no finito no con nulo.
  • Uso del espacio para sangrar Json String por espacio

He estado confundido sobre cuándo usar estos dos métodos de análisis.

Después de hacer eco de mis datos json_encoded y recuperarlos a través de ajax, a menudo me confundo cuando debo usar JSON.stringify y JSON.parse .

Obtengo [object,object] en mi console.log cuando se analiza y un objeto de JavaScript cuando se realiza una cadena.

$.ajax({ url: "demo_test.txt", success: function(data) { console.log(JSON.stringify(data)) /* OR */ console.log(JSON.parse(data)) //this is what I am unsure about? } });


En primer lugar, la función JSON.stringify() convierte un valor de JavaScript en una cadena de notación de objetos de JavaScript (JSON). JSON.parse() función JSON.parse() convierte una cadena de notación de objetos de JavaScript (JSON) en un objeto. Para obtener más información acerca de estas dos funciones, consulte los siguientes enlaces.

https://msdn.microsoft.com/library/cc836459(v=vs.94).aspx https://msdn.microsoft.com/library/cc836466(v=vs.94).aspx

En segundo lugar, el siguiente ejemplo será útil para que pueda comprender estas dos funciones.

<form id="form1" runat="server"> <div> <div id="result"></div> </div> </form> <script> $(function () { //define a json object var employee = { "name": "John Johnson", "street": "Oslo West 16", "phone": "555 1234567" }; //use JSON.stringify to convert it to json string var jsonstring = JSON.stringify(employee); $("#result").append(''<p>json string: '' + jsonstring + ''</p>''); //convert json string to json object using JSON.parse function var jsonobject = JSON.parse(jsonstring); var info = ''<ul><li>Name:'' + jsonobject.name + ''</li><li>Street:'' + jsonobject.street + ''</li><li>Phone:'' + jsonobject.phone + ''</li></ul>''; $("#result").append(''<p>json object:</p>''); $("#result").append(info); }); </script>


JSON: se utiliza principalmente para intercambiar datos hacia / desde el servidor. Antes de enviar el objeto JSON al servidor, tiene que ser una cadena.

JSON.stringify() //Converts the JSON object into the string representation. var jsonData={"Name":"ABC","Dept":"Software"};// It is a JSON object var jsonString=JSON.stringify(jsonData);// It is a string representation of the object // jsonString === ''{"Name":"ABC","Dept":"Software"}''; is true

También convierte la matriz de Javascript en cadena

var arrayObject=["ABC","Software"];// It is array object var arrString=JSON.stringify(array);// It is string representation of the array (object) // arrString === ''["ABC","Software"]''; is true

Cuando recibimos los datos JSON del servidor, los datos serían el formato de cadena. Por lo tanto, convertimos la cadena en el objeto JSON.

JSON.parse() //To convert the string into JSON object. var data=''{ "name":"ABC", "Dept":"Software"}''// it is a string (even though it looks like an object) var JsonData= JSON.parse(data);// It is a JSON Object representation of the string. // JsonData === { "name":"ABC", "Dept":"Software"}; is true


La verdadera confusión aquí no es sobre parse vs stringify, es sobre el tipo de data parámetro de data de la devolución de llamada exitosa.

data pueden ser la respuesta sin formato, es decir, una cadena, o un objeto de JavaScript, según la documentación:

éxito

Tipo: Función (Cualquier dato, String textStatus, jqXHR jqXHR) Una función a la que llamar si la solicitud es satisfactoria. La función pasa tres argumentos: los datos devueltos desde el servidor, formateados de acuerdo con el parámetro dataType o la función de devolución de llamada dataFilter, si se especifica; <..>

Y el dataType por defecto a una configuración de ''conjetura inteligente''

dataType (predeterminado: Intelligent Guess (xml, json, script o html))

Tipo: cadena El tipo de datos que espera recibir del servidor. Si no se especifica ninguno, jQuery intentará deducirlo en función del tipo MIME de la respuesta (un tipo MIME XML producirá XML, en 1.4 JSON generará un objeto JavaScript, en la secuencia de comandos 1.4 ejecutará el script y todo lo demás será devuelto como una cadena).


No sé si se ha mencionado, pero uno de los usos de JSON.parse (JSON.stringify (myObject)) es crear un clon del objeto original.

Esto es útil cuando quiere meterse con algunos datos sin afectar el objeto original. Probablemente no sea la forma más limpia / rápida, pero sin duda la más sencilla para objetos que no son muy complejos.


Se están oponiendo entre sí. JSON.Stringify() convierte JSON en cadena y JSON.Parse() analiza una cadena en JSON.


Son lo inverso de cada uno. JSON.stringify() serializa un objeto JS en una cadena JSON, mientras que JSON.parse() deserializa una cadena JSON en un objeto JS.


Son los opuestos el uno del otro.

JSON.stringify ()

JSON.stringify () serializa un objeto JS en una cadena JSON.

JSON.stringify({}); // ''{}'' JSON.stringify(true); // ''true'' JSON.stringify(''foo''); // ''"foo"'' JSON.stringify([1, ''false'', false]); // ''[1,"false",false]'' JSON.stringify({ x: 5 }); // ''{"x":5}'' JSON.stringify(new Date(2006, 0, 2, 15, 4, 5)) // ''"2006-01-02T15:04:05.000Z"'' JSON.stringify({ x: 5, y: 6 }); // ''{"x":5,"y":6}'' or ''{"y":6,"x":5}'' JSON.stringify([new Number(1), new String(''false''), new Boolean(false)]); // ''[1,"false",false]''

JSON.parse ()

El método JSON.parse () analiza una cadena como JSON, transformando opcionalmente el valor producido.

JSON.parse(''{}''); // {} JSON.parse(''true''); // true JSON.parse(''"foo"''); // "foo" JSON.parse(''[1, 5, "false"]''); // [1, 5, "false"] JSON.parse(''null''); // null


Son todo lo contrario entre sí.

JSON.parse() se utiliza para analizar datos que se recibieron como JSON ; Deserializa una cadena JSON en un objeto JavaScript .

developer.mozilla.org/en/docs/Web/JavaScript/Reference/… por otro lado, se utiliza para crear una cadena JSON a partir de un objeto o matriz ; serializa un objeto JavaScript en una cadena JSON .


JSON.parse() es para "analizar" algo que se recibió como JSON.
JSON.stringify() es crear una cadena JSON a partir de un objeto / matriz.


JSON.parse() se usa para convertir Cadena en Objeto.
JSON.stringify() se usa para convertir Objeto a Cadena.

Usted puede referir esto también ...

<script type="text/javascript"> function ajax_get_json(){ var hr = new XMLHttpRequest(); hr.open("GET", "JSON/mylist.json", true); hr.setRequestHeader("Content-type", "application/json",true); hr.onreadystatechange = function() { if(hr.readyState == 4 && hr.status == 200) { /* var return_data = hr.responseText; */ var data=JSON.parse(hr.responseText); var status=document.getElementById("status"); status.innerHTML = ""; /* status.innerHTML=data.u1.country; */ for(var obj in data) { status.innerHTML+=data[obj].uname+" is in "+data[obj].country+"<br/>"; } } } hr.send(null); status.innerHTML = "requesting..."; } </script>


JSON.stringify() Convierte un objeto en una cadena.

JSON.parse() Convierte una cadena JSON en un objeto.


JSON.stringify(obj [, replacer [, space]]) : toma cualquier objeto serializable y devuelve la representación JSON como una cadena.

JSON.parse(string) : toma una cadena JSON bien formada y devuelve el objeto JavaScript correspondiente.


JSON.stringify convierte un objeto JavaScript en texto JSON y almacena ese texto JSON en una cadena.

JSON.parse convierte una cadena de texto JSON en un objeto JavaScript.


var log = { "page": window.location.href, "item": "item", "action": "action" }; log = JSON.stringify(log); console.log(log); console.log(JSON.parse(log));

// La salida será:

// Para 1st Console es una cadena como:

''{ "page": window.location.href,"item": "item","action": "action" }''

// Para 2nd Console es un objeto como:

Object { page : window.location.href, item : "item", action : "action" }