Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Storage. Работа со свойствами localStorage (https://javascript.ru/forum/misc/32663-storage-rabota-so-svojjstvami-localstorage.html)

dmitry111 24.10.2012 22:56

Storage. Работа со свойствами localStorage
 
Вопрос по Storage.

for (var prop in localStorage) {
    x.innerHTML += prop;
}


1) По какому критерию сортирует свойства localStorage?
2) Возможно ли отсортировать свойства по их созданию?
3) Возможно ли как-нибудь выцепить первое свойство не зная его имени без перебора всех свойств?


Спасибо!

dmitriymar 24.10.2012 22:59

http://javascript.ru/for..in

nerv_ 24.10.2012 23:17

Цитата:

Сообщение от dmitry111
2) Возможно ли отсортировать свойства по их созданию?

localStorage не юзал. Если добавить дату, то можно :)

dmitry111 24.10.2012 23:26

dmitriymar,

что такое for in я знаю, что имелось в виду?

dmitriymar 24.10.2012 23:31

Цитата:

Сообщение от dmitry111
1) По какому критерию сортирует свойства localStorage?

ответ в статье по ссылке -не по какому -как процессор ляжет
Цитата:

Сообщение от dmitry111
2) Возможно ли отсортировать свойства по их созданию?

ответ в статье -нет.только самому по каким то признакам созданным самим
Цитата:

Сообщение от dmitry111
3) Как проще всего выцепить первое свойство не зная его имени? Без перебора всех свойств.

ответ в статье -никак.
Цитата:

Сообщение от dmitry111
что такое for in я знаю, что имелось в виду?

может стоит доки читать научиться?:)
если не нашел -localStorage -объект . в статье:
Цитата:

Конструкция for..in - единственный в javascript способ перебрать все свойства объекта.

dmitry111 24.10.2012 23:55

dmitriymar,

ок ;)

Цитата:

Сообщение от dmitriymar
только самому по каким то признакам созданным самим

например с помощью каких?

dmitriymar 25.10.2012 00:10

Цитата:

Сообщение от dmitry111
например с помощью каких?

добавь какой то параметр или в имя или в значение и сортируй по нему.
считай все в массив и sort пользовательской функцией по одному тебе известному алгоритму
.....

melky 25.10.2012 06:20

Цитата:

Сообщение от dmitriymar
Конструкция for..in - единственный в javascript способ перебрать все свойства объекта.

а как же новые методы ?
localStorage.setItem("sim", "ple");
localStorage.setItem("hel", "lo");
localStorage.setItem("wor", "ld");
localStorage.setItem("zz", "последний элемент");
localStorage.setItem("aa", "первый элемент");


Object.keys(localStorage).sort(function (a, b) { return a.charCodeAt() - b.charCodeAt(); }).forEach(function (key) {
    alert( "localStorage[ " + key + " ] = " + localStorage[key] );
});

dmitry111 25.10.2012 09:19

melky,

спасибо!!!

dmitriymar 25.10.2012 11:24

Цитата:

Сообщение от melky
а как же новые методы ?

до них ещё не дошел)

melky 25.10.2012 16:31

Цитата:

Сообщение от iMaxmaxmaximus
они разве новые?

а что новое - ES5 Harmony ? то вообще только в Node.js и в Firefox есть.

dmitriymar 25.10.2012 16:48

в смысле начинаю читать доки о чём то, как только это становится более менее кросбраузерным ,а иначе это просто лишняя информация какая не в тему сейчас

melky 25.10.2012 16:52

Цитата:

Сообщение от dmitriymar
в смысле начинаю читать доки о чём то, как только это становится более менее кросбраузерным ,а иначе это просто лишняя информация какая не в тему сейчас

точно так же я боюсь пока подходить к изучению этих страстей :
// примеры генераторов.
// 1.
[ [i,j] for (i of rows) for (j of columns) ]
// 2.
[ x for (x of a) if (x.color === "blue") ]
// 3.
[ square(x) for (x of [1,2,3,4,5]) ]

bigkrp 13.01.2015 16:03

Здравуствуйте, решил задать вопрос в этой ветке.

Есть объект localStorge, туда добавляются свойства
localStorage[name] = content.

Позже я хочу вывести имена свойств и сами свойства.
Использую перебор for .. in. Работает во всех браузерах кроме firefox. В firefox - выдает полный список свойсвт, т.е. с методами типа clear().

Подскажите как решить проблему с firefox-ом?

рони 13.01.2015 16:43

bigkrp,
http://learn.javascript.ru/prototype...hasownproperty

bigkrp 14.01.2015 13:44

Благодарю!


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