У меня есть функция, которая извлекает некоторые данные через AJAX в формате JSON, и я делаю цикл $.each
для обработки данных. То, что я делаю прямо сейчас, это примерно так:jQuery each: Используйте переменную в имени ключа
$.each(result, function(i, field){
window.localStorage[cumple1LAC] = field.cumple1LAC;
window.localStorage[cumple2LAC] = field.cumple2LAC;
window.localStorage[cumple3LAC] = field.cumple3LAC;
window.localStorage[cumple4LAC] = field.cumple4LAC;
window.localStorage[cumple5LAC] = field.cumple5LAC;
....
....
....
});
Таким образом, большинство ключей идентичны, за исключением числового идентификатора. Когда речь заходит об использовании полученных данных, что я делаю что-то вроде этого:
for (i=1;i<=numItems;i++){
var cumple = window.localStorage['cumple'+i+'LAC'];
$('input[name=cumple'+i+'LAC]').val([cumple]);
}
Поскольку Есть много вещей, я хотел бы, чтобы перебрать идентификаторы в петле $.each
, аналогичным образом к тому, что я делаю в цикле for, чтобы избежать сотен строк кода (которые я уже закодировал, но по существу - это боль в заднице). Можно ли это сделать? Я бы не хотел использовать числовые индексы для доступа к данным в извлеченном массиве, я хочу придерживаться пар ключей.
Вы пробовали: 'window.localStorage [ "cumple" + я +" LAC "] = поле [" cumple "+ i +" LAC "];'? –
Если вы так их храните, зачем вообще разбираться с 'cumpleXLAC'? Просто сохраните их в одном массиве по индексу –
Как вы все время получаете доступ ко всем значениям, конвертируйте свои данные в строку Json и сохраните одно значение localstorage. Deserialise на чтение, чтобы вернуть ваши данные. –