Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Обработка массива. (https://javascript.ru/forum/dom-window/65630-obrabotka-massiva.html)

ureech 30.10.2016 21:30

Обработка массива.
 
Вечер добрый.После обработки аякс запроса на выходе имею примерно такое.
["{\"id\":\"14\"}","{\"rows\":\"8\",\"min_left\":\"1\",\"max_right\":\"16\"}","{\"id\":\"6\",\"NSRight\":\"12\",\"NSLeft\":\"2\"}","{\"id\":\"12\",\"NSRight\":\"6\",\"NSLeft\":\"4\"}","{\"id\":\"14\",\"NSRight\":\"8\",\"NSLeft\":\"8\"}","{\"id\":\"12\"}","{\"id\":\"14\"}","{\"id\":\"6\",\"rep\":\"48\",\"max_right\":\"16\"}","{\"id\":\"11\",\"rep\":\"48\",\"max_right\":\"16\"}","{\"id\":\"12\",\"rep\":\"48\",\"max_right\":\"16\"}","{\"id\":\"15\",\"rep\":\"48\",\"max_right\":\"16\"}"]

Примерно, потому, что кол-во ключей может меняться.Теперь мне нужно прокрутить это дело в цикле получая id.А для этого мне нужна, в данном случае rows:8 и она под ключом [1]. Но ключ постоянно меняется. Как я могу получить значение rows не зная ключа?

рони 30.10.2016 21:49

ureech,
бред какой-то ...
идите циклом по массиву и проверяйте наличие rows, причём тут id?

Aetae 30.10.2016 22:02

Ну во первых вы получаете на выходе хрень. Используйте человеческий json и никаких подобных проблем не будет.

рони 30.10.2016 22:14

Цитата:

Сообщение от Aetae
Ну во первых вы получаете на выходе хрень.

:yes:
var data = '[{"id":"14"},{"rows":"8","min_left":"1","max_right":"16"},{"id":"6","NSRight":"12","NSLeft":"2"},{"id":"12","NSRight":"6","NSLeft":"4"},{"id":"14","NSRight":"8","NSLeft":"8"},{"id":"12"},{"id":"14"},{"id":"6","rep":"48","max_right":"16"},{"id":"11","rep":"48","max_right":"16"},{"id":"12","rep":"48","max_right":"16"},{"id":"15","rep":"48","max_right":"16"}]';
function foo(json, key) {
    var value;
    JSON.parse(json).some(function(obj, i) {
        return obj[key] != void 0 ? (value = obj[key], true) : false
    });
    return value
};
alert(foo(data,'rows') );

ureech 30.10.2016 22:51

Цитата:

Сообщение от Aetae
Ну во первых вы получаете на выходе хрень. Используйте человеческий json и никаких подобных проблем не будет.

Всё нормально у меня на выходе. Удобней было в таком виде показать.
Цитата:

Сообщение от рони
идите циклом по массиву и проверяйте наличие rows, причём тут id?

Id не причём, я их далее в цикле получаю, а rows определяет кол-во походов.
Спасибо за помощь.


Часовой пояс GMT +3, время: 22:14.