Доступ к множественным массивам из JSON - PullRequest
0 голосов
/ 20 сентября 2011

У меня есть JSON без атрибута elements, а один из элементов JSON имеет значение нескольких массивов.Я выяснил, как получить доступ к массиву, если он есть, но я не уверен, как получить доступ ко второму.

Я мог бы также узнать, как передать новый массив в значение JSON.

Вот что у меня есть

    $(this).attr({
"data-settings": $.toJSON({ nPosX: newPX, nPosY: newPY, oPosX: oldPX, oPosY: oldPY, moves: ["val"]["key"] })
});

var movesObj = $.parseJSON($(this).attr('data-settings'));

В moves хранятся массивы.

Спасибо заранее!

Ответы [ 2 ]

0 голосов
/ 20 сентября 2011

Ну, это не похоже на действительный JSON для меня. Вы не можете определить JSON таким образом. Вы либо определяете ходы как хеш:

moves: {"val":"key"}

Вы получаете доступ к нему следующим образом: move.val или move ["val"]

Или вы определяете ходы как массив хэшей:

moves: [{"val":"key"}, ...]

Доступ к нему осуществляется следующим образом: ходы [0] .val или ходы [0] ["val"] .

Если вам нужен такой вложенный хеш, вам нужно определить его следующим образом:

moves: {"val": {"key":"value"}}

И доступ к нему, как движется ["val"] ["ключ"] или движется.val.key

0 голосов
/ 20 сентября 2011

Не могли бы вы более конкретно рассказать о том, что вы пытаетесь сделать?

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

myArray["key1"]["key2"]

или

myArray.foo.bar
...