Saltar al contenido

¿Cómo puedo obtener javascript para leer desde un archivo .json?

Estate atento ya que en esta sección hallarás el hallazgo que buscas.

Solución:

Suponiendo que se refiere a “archivo en un sistema de archivos local” cuando dice archivo .json.

Deberá guardar los datos json formateados como jsonp y usar un file:// url para acceder a ella.

Su HTML se verá así:



Y el archivo c:dataactivity.jsonp contiene la siguiente línea:

jsonstr = [ "date":"July 4th", "event":"Independence Day" ];

AVISO: A PARTIR DEL 12 DE JULIO DE 2018, TODAS LAS OTRAS RESPUESTAS ESTÁN DESACTUALIZADAS. JSONP AHORA SE CONSIDERA UNA IDEA TERRIBLE

Si tiene su JSON como un string, JSON.parse() funcionará bien. Dado que está cargando el json desde un archivo, deberá realizar una solicitud XMLHttpRequest. Por ejemplo (Este es el ejemplo de w3schools.com):

var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() 
    if (this.readyState == 4 && this.status == 200) 
        var myObj = JSON.parse(this.responseText);
        document.getElementById("demo").innerHTML = myObj.name;
    
;
xmlhttp.open("GET", "json_demo.txt", true);
xmlhttp.send();




Use the XMLHttpRequest to get the content of a file.

The content is written in JSON format, and can easily be converted into a JavaScript object.

Take a look at json_demo.txt

No funcionará aquí ya que ese archivo no se encuentra aquí. Vaya a este ejemplo de w3schools: https://www.w3schools.com/js/tryit.asp?filename=tryjson_ajax

Aquí está la documentación para JSON.parse(): https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse

He aquí un resumen:

El método JSON.parse() analiza un JSON stringconstruyendo el valor u objeto de JavaScript descrito por el string. Se puede proporcionar una función de reactivación opcional para realizar una transformación en el objeto resultante antes de que se devuelva.

Aquí está el ejemplo utilizado:

var json = '"result":true, "count":42';
obj = JSON.parse(json);

console.log(obj.count);
// expected output: 42

console.log(obj.result);
// expected output: true

Aquí hay un resumen de XMLHttpRequests de https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest:

Utilice objetos XMLHttpRequest (XHR) para interactuar con los servidores. Puede recuperar datos de una URL sin tener que actualizar la página completa. Esto permite que una página web actualice solo una parte de una página sin interrumpir lo que está haciendo el usuario. XMLHttpRequest se usa mucho en la programación Ajax.

Si no quiere usar XMLHttpRequests, entonces una forma de JQUERY (que no estoy seguro de por qué no funciona para usted) es http://api.jquery.com/jQuery.getJSON/

Como no funciona, intentaría usar XMLHttpRequests

También puede probar las solicitudes AJAX:

$.ajax(
    'async': false,
    'global': false,
    'url': "/jsonfile.json",
    'dataType': "json",
    'success': function (data) 
        // do stuff with data
    
);

Documentación: http://api.jquery.com/jquery.ajax/

Puedes hacerlo como…
Simplemente proporcione la ruta correcta de su archivo json …



    
        
             
    
    
    

Simplemente obteniendo los datos y agregándolos a un div… Inicialmente imprimiendo la longitud en alerta.

Aquí está mi archivo Json: abc.json

data = '["name" : "Riyaz","name" : "Javed","name" : "Arun","name" : "Sunil","name" : "Rahul","name" : "Anita"]';

Sección de Reseñas y Valoraciones

¡Haz clic para puntuar esta entrada!
(Votos: 2 Promedio: 4.5)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *