2016-06-20 119 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; 

使用對象(名爲index)

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