Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 11.04.2011, 20:11
Universe вне форума Посмотреть профиль Отправить личное сообщение для Universe Найти все сообщения от Universe
  № 1  
Ответить с цитированием
Universe
 
Аватар для Universe

Регистрация: Feb 2010
Сообщений: 811
Отправить сообщение для Universe с помощью ICQ Отправить сообщение для Universe с помощью Skype™
Arrow Работа с JSON в AS3

Допустим у меня есть объект JSON, который я принимаю и декодирую...

Код AS3:
var obj2:Object = {
                "glossary": {
                    "title": "example glossary",
                    "GlossDiv": {
                        "title": "S",
                        "GlossList": {
                            "GlossEntry": {
                                "ID": "SGML",
                                "SortAs": "SGML",
                                "GlossTerm": "Standard Generalized Markup Language",
                                "Acronym": "SGML",
                                "Abbrev": "ISO 8879:1986",
                                "GlossDef": {
                                    "para": "A meta-markup language, used to create markup languages such as DocBook.",
                                    "GlossSeeAlso": ["GML", "XML"]
                                },
                                "GlossSee": "markup"
                            }
                        }
                    }
                }
            }
 
			var obj5 = JSON.decode(JSON.encode(obj2));
как мне теперь вывести список свойств этих объектов, если я не знаю имён переменных?
Т.е. допустим мне надо показать вот это
Код AS3:
trace(obj5.glossary.title);
при условии что я не знаю что в объекте obj5 есть под-объект glossary, а в нём свойство title? Я только знаю что в нём чтото должно быть, чтото типа узел 1 в узле 1

Старый 11.04.2011, 20:16
honest_man вне форума Посмотреть профиль Отправить личное сообщение для honest_man Найти все сообщения от honest_man
  № 2  
Ответить с цитированием
honest_man

Регистрация: Aug 2010
Сообщений: 86
/* --offtop-- хах, это из-за обновления в среде "ВКонтакте"? Угадал? Там же есть способ получить ответ на свой запрос в форматье XML.*/

Старый 11.04.2011, 20:16
gloomyBrain вне форума Посмотреть профиль Отправить личное сообщение для gloomyBrain Найти все сообщения от gloomyBrain
  № 3  
Ответить с цитированием
gloomyBrain
 
Аватар для gloomyBrain

блогер
Регистрация: Mar 2008
Адрес: РФ, Санкт-Петербург
Сообщений: 2,272
Записей в блоге: 5
Отправить сообщение для gloomyBrain с помощью ICQ Отправить сообщение для gloomyBrain с помощью Skype™
Эмм... так? =)
Код AS3:
var jsonObj:Object = ... ; // Тот самый объект
var name:String = null;
 
for (name in jsonObj) {
 
trace(name + " : " + jsonObj[name]);
 
}
По сути дела объект можно рассматривать как дерево из узлов и листьев ( общем так же, как XML). Так что похожим образом его можно обходить рекурсивно
__________________
...вселенская грусть

Старый 11.04.2011, 20:16
Jewelz вне форума Посмотреть профиль Отправить личное сообщение для Jewelz Найти все сообщения от Jewelz
  № 4  
Ответить с цитированием
Jewelz
 
Аватар для Jewelz

Регистрация: Aug 2008
Адрес: Рязань
Сообщений: 723
если вы не знаете, в каком структуре получаете, тогда перебором
__________________
low +

Старый 11.04.2011, 20:28
Universe вне форума Посмотреть профиль Отправить личное сообщение для Universe Найти все сообщения от Universe
  № 5  
Ответить с цитированием
Universe
 
Аватар для Universe

Регистрация: Feb 2010
Сообщений: 811
Отправить сообщение для Universe с помощью ICQ Отправить сообщение для Universe с помощью Skype™
honest_man - не угадали! Надо для фейсбука

Создать новую тему Ответ Часовой пояс GMT +4, время: 07:06.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 07:06.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.