Say Я предоставляется объект JSON, который выглядит следующим образом:находкой порядковый номер элемента JSon
{"someList": [{"id": "21154859" },{"id": "21154865" },{"id": "21154856" },{"id": "21154870" }]}
Я хочу, чтобы выяснить, что порядковый номер элемента текущего «someList» Я на. У меня есть someList идентификатор товара и представлен вар помощи и равна: 21154856.
Я создал функцию следующим образом:
$.getJSON(url, function(data) {
var jsonLength = data.someList.length;
for (i=1; i <= jsonLength; i++){
chx = data.someList[i].id;
if(chx === aid){
var currentidno = Number(i) + 1;
$('#page').html('').append(currentidno + ' of ' + jsonLength);
break;
}
}
});
Когда я установить это он отлично работает и дает мне Результат такой: 3 из 4
Но он чувствует себя неэффективно, и мне интересно, как он будет работать, если бы существовали тысячи возможностей. Может ли кто-то повлиять на то, действительно ли это - лучший способ достичь того, что я хочу сделать, и проверить или опровергнуть предположение, что это хороший способ выполнить эту задачу?
Лучше всего изменить JSON как просто массив чисел. Это была бы самая эффективная вещь для синтаксического анализа: 'Array.indexOf' тогда было бы достаточно. – lonesomeday