Как правельно разбирать JSON (javascript)

Тема в разделе "Другие языки", создана пользователем incognet, 24 фев 2009.

Статус темы:
Закрыта.
Модераторы: Цукер
  1. incognet

    incognet Создатель

    Регистр.:
    17 сен 2007
    Сообщения:
    41
    Симпатии:
    4
    Есть такой и подобные JSON, вот встал вопрос как можно узнать имена объектов в нутрии этого JSON. Тоесть для этого примера как можно узнать имена content_qwe1, content_zxc52, LID, content_ass3 и по ним пройтись в цикле разгребая их содержимое. Дело в том что эти имены не постоянные и их зарение не известно и надо их получить и уже в цикле читать содержимое таковых.

    Код:
    {
      "content_qwe1": "нечто",
      "content_zxc52": 
      {
         "40": "данные 40",
         "30": "данные 30",
         "66": "данные 66",
         "46": "данные 46"
      },
      "LID":
      [
         "content_lb", "content_lc"
      ],
      "content_ass3": "что-то",
    }
     
  2. PHP_Master

    PHP_Master

    Регистр.:
    3 фев 2008
    Сообщения:
    2.647
    Симпатии:
    591
    Код:
    j = eval({"content_qwe1": "нечто",
      "content_zxc52": 
      {
         "40": "данные 40",
         "30": "данные 30",
         "66": "данные 66",
         "46": "данные 46"
      },
      "LID":
      [
         "content_lb", "content_lc"
      ],
      "content_ass3": "что-то",
    });
    
    result = '';
    
    for (var i in j) {result += i + " = " + j[i] + "\n";}
    
    alert(result);
    
    Это пример для простого массива.
    Для вложенного надо делать рекурсивный обход.
     
    incognet нравится это.
  3. incognet

    incognet Создатель

    Регистр.:
    17 сен 2007
    Сообщения:
    41
    Симпатии:
    4
    о! превелико благодарен, я пчти так и пробовал только одну ошибочку допустил, все остольно понятно , огромное спасибо
     
  4. NetStranger

    NetStranger Постоялец

    Регистр.:
    16 сен 2008
    Сообщения:
    124
    Симпатии:
    1
    А не поможете мне?? я уже 2 день пытаюсь понять... у меня на сервере выдается в таком виде данные :
    как мне сделать чтобы он вывел циклом

    t=55
    tt=51

    и еще вопрос со стороны сервера, вот он мне при таком коде
    выдает выше написаное, а я не пойму как быть если там не 2 значения а допустим 3 или более? то есть id=51 , word=tt, other=123, someelse=321 , как это оформить?


    Одним словом мне надо сделать полную отработку - вывод из таблицы БД типа
    id word other someelse
    51 tt 123 321
    55 t 444 444

    вывести эти данные яваскриптом через JSON, подскажите плиз
     
  5. PHP_Master

    PHP_Master

    Регистр.:
    3 фев 2008
    Сообщения:
    2.647
    Симпатии:
    591
    Выбираешь массив из БД, делаешь его json_encode и отдаёшь javascript.
     
  6. NetStranger

    NetStranger Постоялец

    Регистр.:
    16 сен 2008
    Сообщения:
    124
    Симпатии:
    1
    Не , ну я не об этом просил, я прошу мне оформить это грамотно в коде, сам смысл то я понимаю как это делать, а как вот допустим "отдать javascript" или "сделать его json" мне непонятно...
     
Статус темы:
Закрыта.