2016-06-20 5 views
0

Я пытаюсь хранить массив в LocalStorage с помощью следующего кода:Сохранение ключевых значений массива в LocalStorage

var tempval = []; 
tempval['key'] = 1;      
localStorage.setItem("Message", JSON.stringify(tempval)); 

но в LocalStorage он показывает только []

Так как хранить и где я делаю ошибку ?

+1

Это неправильно во многих отношениях. Но позвольте мне спросить вас о первом очевидном «Где многомерный массив?» Этот '[[1,2], [3,4]]' - многомерный массив, массив в массиве – kidwon

+0

Созданный вами массив подобен ассоциативному массиву и его сложный в javascript. Поскольку js не поддерживает ассоциативный массив. – Cloud

+0

Я понимаю, что вы хотите вставить 'object', вы пытаетесь сделать это' tempval.push ({'key': 1}) '. но «многомерный массив»? – Gintoki

ответ

0

Вот ваш код: -

var tempval ={}; 
tempval.key = 1;      
localStorage.setItem("Message", JSON.stringify(tempval)); 
+0

Спасибо Gaurav, теперь здесь Key - это динамическое значение, например key = "test @ 123", так что там можно взять динамический ключ? –

+0

@ Er.KT, пожалуйста, объясните, что именно вы хотите сделать! –

0

JavaScript не поддерживает массивы с именованными indexes.Arrays всегда использовать пронумерованные индексы в JavaScript. Используйте объект, если хотите использовать именованный индекс.

Использование массива (пронумерованный индекс)

var tempval = []; 
tempval[0] = 1; 

Использование объекта (названный индекс)

var tempval = {}; 
tempval['key'] = 1; 

Использование var tempval ={}; вместо var tempval = [];

0

Так Ваш вопрос не так уж много я понимаю, но я пытаюсь дать вам общее решение Тион для хранения многомерных массивов в локальном хранилище,

var a= [[1,2,3],["hello","world"]]; // multi dimentional array 
    console.log(a); 
    var b = JSON.stringify(a); // converting the array into a string 
    console.log(b); 
    localStorage.setItem("TestData",b); // storing the string in localstorage 
    var c= JSON.parse(localStorage.getItem("TestData")); //accessing the data from localstorgae. 
    console.log(c); 

Here is the code running in Jsbin

Смежные вопросы