Создать массив из даных массива.
Такой вот ворос.
url='http',title='title',num=1; save=''+url+','+title+','+num+',|'; x=1; localStorage.setItem('Nf',save); n=localStorage.getItem('Nf'); url='http2',title='title2',num=2; n+=''+url+','+title+','+num+',|'; localStorage.setItem('Nf',n); n=localStorage.getItem('Nf'); save=n.split(',|'); alert(save); num=save.length; array=[]; array +=save[0].split(','); array +=save[1].split(','); alert(typeof array); alert(array);Есть вот такой ясен пень что не закоченный код. Он сохраняет в локальное хранилище данные url title num два раза. Тем самым получая строку из повторяющихся данных различающихся только цифрами. После разделяет на массивы по ,| получаем массив с двумя переменными http,title,1 и http2,title2,2 но и эти данные надо разделить на массивы. Но подскажете как? array=[]; array +=save[0].split(','); array +=save[1].split(',');Так не работает =( |
|
Почитай про JSON сериализацию
|
Про него знаю . . . Но реализовать ведь будет сложней. После удаления данных пустые нумера не чем не заполняються, перезапись делать мутарно да и сложно, вызывает такие не желательные ошибки как не показывание последних элементов. Подобное делал =(
|
Спасибо не подумал =)
|
koeshiro, ты о чем вобще?
var data = [{ url: 'http://site.ru', title: 'title', num: 1 }]; localStorage.setItem('Nf',JSON.stringify(data)); var data = JSON.parse(localStorage.getItem('Nf')); data.push({ url: 'http://site2.ru', title: 'title2', num: 2 }); localStorage.setItem('Nf',JSON.stringify(data)); var data = JSON.parse(localStorage.getItem('Nf')); alert(data.map(function(item){ return '{' + Object.keys(item).map(function(key){ return key + ':' + item[key]}) + '}'; })); |
danik.js, а теперь представьте. Как с таким работать в количестве 100 чтук? Может для вас это просто, но лично я больше привык к обычным массивам.
|
Цитата:
|
А теперь представь что в одном твоем title или url вдруг появляется запятая или знак |. Все, приплыли?
|
Цитата:
|
Часовой пояс GMT +3, время: 07:01. |