Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 11.05.2013, 20:13
Новичок на форуме
Отправить личное сообщение для tion Посмотреть профиль Найти все сообщения от tion
 
Регистрация: 11.05.2013
Сообщений: 9

Обработка json
Здравствуйте, пишу скрипт для приложение в vk.com, так вот нужно обработать ответ который приходит в формате json, но проблема вот в чем если название объекта состоит из цифр(ы) то весь скрипт не работает

var oAuto = JSON.parse(text);

oAuto.player.name // вот это работает нормально

oAuto.player.territories.0.battlefields.0.static_r esources.battlefield_complete // а вот это не работает, даже сам скрипт не работает
Посоветуйте, что нужно сделать, кроме как обработку через php)
Ответить с цитированием
  #2 (permalink)  
Старый 11.05.2013, 21:18
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

Сообщение от tion
oAuto.player.territories.0.battlefields.0.static_r esources.battlefield_complete // а вот это не работает, даже сам скрипт не работает
Посоветуйте, что нужно сделать, кроме как обработку через php)
Попробуйте так
oAuto.player.territories[0].battlefields[0].static_r esources.battlefield_complete

или так
oAuto.player.territories['0'].battlefields['0'].static_r esources.battlefield_complete
Ответить с цитированием
  #3 (permalink)  
Старый 11.05.2013, 21:25
Новичок на форуме
Отправить личное сообщение для tion Посмотреть профиль Найти все сообщения от tion
 
Регистрация: 11.05.2013
Сообщений: 9

Сообщение от vadim5june Посмотреть сообщение
Попробуйте так
oAuto.player.territories[0].battlefields[0].static_r esources.battlefield_complete

или так
oAuto.player.territories['0'].battlefields['0'].static_r esources.battlefield_complete
Спасибо работает

Последний раз редактировалось tion, 12.05.2013 в 00:13.
Ответить с цитированием
  #4 (permalink)  
Старый 11.05.2013, 21:32
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,586

Должно работать. Вы вручную чтоль json на сервере формируете? Юзайте на сервере json_encode.

Также возможно дело в авто_пробеле поставленном форумом и бездумном копировании.
__________________
29375, 35

Последний раз редактировалось Aetae, 11.05.2013 в 21:34.
Ответить с цитированием
  #5 (permalink)  
Старый 11.05.2013, 21:33
Кандидат Javascript-наук
Посмотреть профиль Найти все сообщения от qwerty-клавиатура
 
Регистрация: 12.04.2013
Сообщений: 132

Ctrl+Shift+I Opera или F12 в Хроме, выбираешь консоль, вбиваешь

console.log(oAuto);

смотришь что у тя там лежит/
Ответить с цитированием
  #6 (permalink)  
Старый 11.05.2013, 21:34
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

может там массив-тогда по другому надо-приведи пример json если не сильно большой
Ответить с цитированием
  #7 (permalink)  
Старый 11.05.2013, 23:37
Новичок на форуме
Отправить личное сообщение для tion Посмотреть профиль Найти все сообщения от tion
 
Регистрация: 11.05.2013
Сообщений: 9

Сообщение от Aetae Посмотреть сообщение
Должно работать. Вы вручную чтоль json на сервере формируете? Юзайте на сервере json_encode.

Также возможно дело в авто_пробеле поставленном форумом и бездумном копировании.
Я json только получаю, а отправляю post/get запрос
Ответить с цитированием
  #8 (permalink)  
Старый 11.05.2013, 23:43
Новичок на форуме
Отправить личное сообщение для tion Посмотреть профиль Найти все сообщения от tion
 
Регистрация: 11.05.2013
Сообщений: 9

Сообщение от vadim5june Посмотреть сообщение
может там массив-тогда по другому надо-приведи пример json если не сильно большой
Вообще большой, но сейчас кусок пришлю:
"territories":{"0":{"battlefields":{"1":{"static_resources":{"battlefield_complete":2},"chosen_tactics":{"2":"0"}}}}}
Ответить с цитированием
  #9 (permalink)  
Старый 11.05.2013, 23:48
Новичок на форуме
Отправить личное сообщение для tion Посмотреть профиль Найти все сообщения от tion
 
Регистрация: 11.05.2013
Сообщений: 9

Сообщение от qwerty-клавиатура Посмотреть сообщение
Ctrl+Shift+I Opera или F12 в Хроме, выбираешь консоль, вбиваешь

console.log(oAuto);

смотришь что у тя там лежит/
Tampermonkey started
[0.004] Real time offset: 0, minDt: 0, final time offset: 0 common.js:306
[0.176] dom started common.js:306
env: ERROR: Syntax error @ 'V okope script'!
Unexpected number
SyntaxError: Unexpected number
at Window.Function (<anonymous>)
at L (eval at <anonymous> (eval at <anonymous> (chrome-extension://dhdgffkkebhmkfjojejmpbldmpobfkfo/content.js:53:21)), <anonymous>:158:21)
at n (eval at <anonymous> (eval at <anonymous> (chrome-extension://dhdgffkkebhmkfjojejmpbldmpobfkfo/content.js:53:21)), <anonymous>:392:2)
at R (eval at <anonymous> (eval at <anonymous> (chrome-extension://dhdgffkkebhmkfjojejmpbldmpobfkfo/content.js:53:21)), <anonymous>:396:86)
at Q (eval at <anonymous> (eval at <anonymous> (chrome-extension://dhdgffkkebhmkfjojejmpbldmpobfkfo/content.js:53:21)), <anonymous>:196:40)
Uncaught SyntaxError: Unexpected number
Tampermonkey started
env: ERROR: Syntax error @ 'V okope script'!
Unexpected number
SyntaxError: Unexpected number
at Window.Function (<anonymous>)
at L (eval at <anonymous> (eval at <anonymous> (chrome-extension://dhdgffkkebhmkfjojejmpbldmpobfkfo/content.js:53:21)), <anonymous>:158:21)
at n (eval at <anonymous> (eval at <anonymous> (chrome-extension://dhdgffkkebhmkfjojejmpbldmpobfkfo/content.js:53:21)), <anonymous>:392:2)
at R (eval at <anonymous> (eval at <anonymous> (chrome-extension://dhdgffkkebhmkfjojejmpbldmpobfkfo/content.js:53:21)), <anonymous>:396:86)
at Q (eval at <anonymous> (eval at <anonymous> (chrome-extension://dhdgffkkebhmkfjojejmpbldmpobfkfo/content.js:53:21)), <anonymous>:196:40)

Uncaught SyntaxError: Unexpected number notifier.php:168
[10.167] sending from ls..

Последний раз редактировалось tion, 11.05.2013 в 23:51.
Ответить с цитированием
  #10 (permalink)  
Старый 11.05.2013, 23:54
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,586

Во-первых не хаватет крайних скобок:
{"territories":{"0":{"battlefields":{"1":{"static_resources":{"battlefield_complete":2},"chosen_tactics":{"2":"0"}}}}}}
во-вторых где вы здесь видите "player" и battlefields[0]?
oAuto = {
  "territories": {
    "0": {
      "battlefields": {
        "1": {
          "static_resources": {
            "battlefield_complete":2
          },
          "chosen_tactics":{
            "2":"0"
          }
        }
      }
    }
  }
}

alert(
    oAuto.territories[0].battlefields[1].static_resources.battlefield_complete
)
__________________
29375, 35
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
обработка json на jQuery karmis AJAX и COMET 2 11.03.2012 16:24
Обработка массива в json delargo Общие вопросы Javascript 2 26.02.2012 14:40
JSON или JSONP для запросов на другой сервер? Метод GET, для длинных сообщений? Kotakota jQuery 5 23.08.2011 23:12
Обработка JSON menangen AJAX и COMET 0 14.05.2011 16:54
jQuery. Обработка ошибок и JSON. mma_mma jQuery 3 19.07.2010 12:10