Foros del Web » Programando para Internet » Javascript »

Buscar valor en JSon

Estas en el tema de Buscar valor en JSon en el foro de Javascript en Foros del Web. Hola a todos, necesito buscar un valor en un JSon; explico mejor: tengo un array con varios JSon en cada uno de sus nodos, la ...
  #1 (permalink)  
Antiguo 20/08/2016, 07:12
Avatar de acumulador  
Fecha de Ingreso: junio-2008
Ubicación: Medellin - Antiquia
Mensajes: 459
Antigüedad: 15 años, 10 meses
Puntos: 7
Buscar valor en JSon

Hola a todos, necesito buscar un valor en un JSon; explico mejor: tengo un array con varios JSon en cada uno de sus nodos, la idea es iterar en el array y buscar un valor en el JSon de cada nodo. Hago algo como esto pero no me funciona:
En el codigo intento buscar en el JSon es el id que recibo como parámetro
Código:
var sw = false;
        for(var i = 0; i< $arrLista.length; i++)
        {
            if(arrLista[i].id == id)
            {
                console.log("Encontro en: " + i);
                sw = true;
            }
        }

        if(sw == false)
        {
            console.log("No encontro id: " + id);
        }
Espero me puedan dar alguna luz en este enredo, de antemano muchas gracias por su tiempo y colaboración
__________________
-----------------------------------------------------------------------------
Yo vivo de preguntar, saber no puede ser lujo...
  #2 (permalink)  
Antiguo 20/08/2016, 13:47
 
Fecha de Ingreso: julio-2015
Mensajes: 85
Antigüedad: 8 años, 8 meses
Puntos: 4
Respuesta: Buscar valor en JSon

De que manera has conseguido esos Json? el primer nivel es el id? podrias poner un ejemplo de tu Json, puede ser que alomejor necesites parsearlo a Json porque lo tienes en un formato string.
  #3 (permalink)  
Antiguo 21/08/2016, 07:28
Avatar de acumulador  
Fecha de Ingreso: junio-2008
Ubicación: Medellin - Antiquia
Mensajes: 459
Antigüedad: 15 años, 10 meses
Puntos: 7
Respuesta: Buscar valor en JSon

Cita:
Iniciado por dardosmania Ver Mensaje
De que manera has conseguido esos Json? el primer nivel es el id? podrias poner un ejemplo de tu Json, puede ser que alomejor necesites parsearlo a Json porque lo tienes en un formato string.
Muchas gracias por responder, mira este es el codigo con el que obtengo el JSon, lo tomo desde localStorage.
Código:
$scope.delCart = function(id) {
	arrLista = angular.fromJson(window.localStorage['lShop']
	
        var sw = false;
        for(var i = 0; i< arrLista.length; i++)
        {
            if(arrLista[i].id == id)
            {
                console.log("Encontro en: " + i);
                sw = true;
            }
        }

        if(sw == false)
        {
            console.log("No encontro id: " + id);
        }
    };
Como puedes ver el arreglo arrList lo obtengo desde el localStorage convirtiendolo a Json, sigo sin poder acceder a cada espacio del array donde esta el JSon para obtener el id y lograr comparar valores con el id que recibo como parametro. El primer nivel sera el espacio de cada array donde estan los JSon, te muestro la estructura de mi JSon:
Código:
[
  {
    "0": "3",
    "1": "Bala PG",
    "2": "Descripción del articulo",
    "3": "21500",
    "4": "img/im24.jpg",
    "id": "3",
    "producto": "Bala PG",
    "ds_producto": "Descripción del articulo",
    "valor": "21500",
    "foto": "img/im24.jpg",
  }
]
Gracias nuevamente por tu tiempo y colaboración.
__________________
-----------------------------------------------------------------------------
Yo vivo de preguntar, saber no puede ser lujo...
  #4 (permalink)  
Antiguo 23/08/2016, 07:00
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: Buscar valor en JSon

te falta el cierre
Cita:
arrLista = angular.fromJson(window.localStorage['lShop'])
en caso que aún no funcione, lee sobre JSON.stringify() y JSON.parse()
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}

Etiquetas: funcion, js, json, valor
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 14:26.