2015-04-05 70 views
0

我試圖從localStorage檢索值,但下面的代碼在瀏覽器控制檯中打印NULL而不是數組對象值!任何一個能幫助我這個請從localStorage添加和檢索數組

var ary = []; 

function setFavorite(n, v) { 
    alert("a=" + n + " ,v=" + v); 
    var obj = {}; 
    obj[n] = v; 
    ary.push(obj); 
    // Put the object into storage 
    localStorage.setItem('testObject', JSON.stringify(ary)); 
    // Retrieve the object from storage 
    var retrievedObject = localStorage.getItem('ary'); 
    console.log('retrievedObject: ', JSON.parse(retrievedObject)); 
} 
setFavorite("Power", "Power Converter"); //calling above function from a button click 

回答

2

您要添加的testObject項下的對象,但你取的ary鍵的值,因此,爲什麼不返回任何。

UDATE:JSFiddle用一個簡單的例證用於添加和從localStorage

+0

對不起!它的愚蠢的錯誤 – 2015-04-05 23:02:27

+0

你能告訴我,我怎麼可以退回到每個循環,以便我可以在控制檯中一起打印名稱和值 – 2015-04-05 23:03:18

+0

你的意思是你想檢索存儲在'localStorage'中的數組,然後查看一切印刷的關鍵和價值? – vlaz 2015-04-05 23:10:25

1

嗯檢索數組,錯字我想:「進制」尚未被存儲。

您存儲了「testObject」。

var retrievedObject = localStorage.getItem('testObject'); 

應該訣竅。