Foros del Web » Programando para Internet » Jquery »

Leer una cantidad de datos de un fichero un JSON

Estas en el tema de Leer una cantidad de datos de un fichero un JSON en el foro de Jquery en Foros del Web. Buenas tardes ! He conseguido insertar los elementos uno a uno de un archivo JSON en la base de datos pero ahora me ha surgido ...
  #1 (permalink)  
Antiguo 31/08/2015, 11:58
 
Fecha de Ingreso: noviembre-2010
Mensajes: 156
Antigüedad: 13 años, 4 meses
Puntos: 0
Leer una cantidad de datos de un fichero un JSON

Buenas tardes ! He conseguido insertar los elementos uno a uno de un archivo JSON en la base de datos pero ahora me ha surgido una duda para mejorar el código.

Realizo lo siguiente a través de JQUERY y lo que hago es obtener todos los datos del archivo y meterlos en un array.

Mi idea es coger sólo los dos primero elementos que recibo del JSON y enviarlos al array Tipos[] , después esto ya se encarga luego de insertar los elementos de dicho array de uno en uno.

Espero respuesta , Gracias !

Código Javascript:
Ver original
  1. function lee_json() {
  2.                 $.getJSON( "comarcas.json", function( data ) {
  3.                     $.each(data, function(i, item) {
  4.                         $( ".inner" ).append("<div class='comarca color'>"+item.comarca+"</div>");
  5.                         Tipos = Tipos.concat(item.comarca);
  6.                     })
  7.                 });
  8.             };
  #2 (permalink)  
Antiguo 31/08/2015, 13:55
 
Fecha de Ingreso: noviembre-2010
Mensajes: 36
Antigüedad: 13 años, 5 meses
Puntos: 1
Respuesta: Leer una cantidad de datos de un fichero un JSON

Hola,

podemos optimizar la función de varias maneras. Premisas previas:

1. En general, no conviene ir insertando cositas en el DOM de a poquitos, pues cada vez que lo haces se vuelve a renderizar. En estos casos, lo mejor es armar todo el chorro de html que necesitas y luego insertarlo solo una vez.

2. Se deduce que lo quieres insertar en un sitio en un concreto. Usa mejor un id en el selector, que es más rápido que la clase (y solo se insertaría en un sitio si se te despista esa clase).

3. Un for es mucho más eficiente que un each y además te permite controlar cuántos ítems quieres armar...

4. En js usa mejor camelCase (leeJson), no el guion bajo de php y similares, para nombrar las cosas.

5. Añade un "cortafuegos" por si te falla el get.

Algo así (es un borrador que deberías afinar, no sé bien qué tiene data):

Código Javascript:
Ver original
  1. function leeJson() {
  2.   $.getJSON( "comarcas.json", function( data ) {
  3.    var cadena = "",
  4.           i = 0;
  5.  
  6.    // cortafuegos
  7.     if (!data) {
  8.        return false;
  9.      }
  10.  
  11.    // solo queremos dos
  12.     for (; i < 2; i++) {
  13.        cadena +="<div class='comarca color'>"+data[i].item.comarca+"</div>";
  14.     }
  15.    
  16.     $( "#tuSuperContenedor" ).append(cadena);
  17.  
  18. }

Etiquetas: cantidad, fichero, javascript, js, json
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:03.