Я не могу думать о причине вы хотите сделать это, но вы могли бы воспользоваться тем, что localStorage
в основном объект и сделать что-то вроде этого:
var tempLocalStorage = {};
for(prop in localStorage) {
if(localStorage.hasOwnProp(prop)) {
tempLocalStorage[prop] = localStorage.getItem(prop);
}
}
var SomeVar = tempLocalStorage["SomeKey"];
Я перебирая значения в localStorage
и добавляя их во временную локальную переменную хранилища. Затем вы можете получить доступ к временной переменной локального хранилища с теми же ключами, что и стандартный localStorage
, но со стандартным синтаксисом свойств объекта, а не с настраиваемым синтаксисом getItem()
, который использует localStorage
.
Редактировать: Вот предложение. Сохраните все переменные на один объект, затем загрузите и сохраните этот объект с localStorage
вместо сохранения отдельных объектов. Это индивидуальная переменная, обращающаяся к вызовам, которые занимают больше всего времени. Для считывания 10 символов из одной переменной в память требуется примерно такое же количество времени, что и чтение 1000, согласно this post по оптимизации localStorage
.
потому что каждый раз, когда вы обращаетесь к собственности, вы получаете доступ к нему с жесткого диска. Я хочу получить все с жесткого диска в одном чтении вместо 20. – frenchie
@frenchie: Это правда, но если вы читаете только 20 переменных, я не думаю, что это вызовет проблемы с производительностью, если это то, что вы беспокоился. Я был бы обеспокоен, если бы вместо этого получал сотни или тысячи переменных. –
Я знаю, что это будет минимальная оптимизация; Мне было интересно, возможно ли это. Нет, если нет. – frenchie