localstorage
не возвращает массив или объект.Он может хранить только строку.
Способ, которым люди обходят ее, заключается в JSON.stringify()
массиве / объекте перед передачей его в setItem
.Затем, извлекая его с помощью getItem()
, вы запускаете для него JSON.parse()
.
Предполагая, что это объект, и вы проанализировали его, вы можете изменить переменную args
перед отправкой:
args.type = 6;
Чтобы облегчить все это, вот маленький помощник, которого вы можете вызвать:
var localstorage = {
set: function (key, value) {
window.localStorage.setItem( key, JSON.stringify(value) );
},
get: function (key) {
try {
return JSON.parse( window.localStorage.getItem(key) );
} catch (e) {
return null;
}
}
};
Если вы включите этот скрипт, вы сможете затем устанавливать и получать предметы черезlocalstorage.get
и localstorage.set
, и он автоматически преобразует его в & из JSON.