2016-06-26 3 views
0

Мне очень трудно найти способ перебора этого объекта JSON так, как хотелось бы. Я хочу разделить токен в переменной и детали пользователя в других переменных. Я использую только Javascript здесь.Итерирование через объект json

Во-первых, вот объект

{ 
    "token": "517b27a84a4d373a636e323a9572a0ab43883291", 
    "user": { 
    "credential_id":"1", 
    "name":"name", 
    "password":"password", 
    "age":"25", 
    "email":"[email protected]", 
    "img_src":"043008thmy.jpg", 
    "user_type":"0", 
    "username":"kalay" 
    } 
} 
+0

попытаться использовать 'для (вар я в объекте) {}' –

+0

Возможная Дубликат [Access/процесса (вложенные) объекты, массивы или JSON] (http://stackoverflow.com/questions/11922383/access -Process-гнездовые-объекты-массивы или-JSON) – Teemu

ответ

0

просто попробовать

var token = obj.token; 
var user_credentials = obj.user.credential_id; 

так же вы можете получить доступ к значениям других атрибутов в obj

1

Использование JSON.parse которые Десериализует JSON произвести объект JavaScript или массив.

В этом примере используется JSON.parse для десериализации JSON в объект json_obj.

var json_obj = JSON.parse(json); 
var token = json_obj.token; 
var username = json_obj.user.username; 
var email = json_obj.user.email; 
0

Вы также можете получить доступ к содержимому через:

var token = obj["token"]; 

или

var username = obj["user"]["username"]; 
0

Просто используйте ключевое значение для итерации, мой метод немного статичным, так как он требует, чтобы вы знаете «токен» и «пользователь» в вашем json.

var token = "", 
    user = {}; 

for(var key in jsonObject){ 
if(key == "token"){ 
    token = jsonObject[key]; 
} 
if(key == "user"){ 
    user = jsonObject[key]; 
} 
} 
Смежные вопросы