2015-05-03 59 views
0

我一直在做一個項目,使用一個對象來保持與用戶的對話。但是,如果用戶提出的問題不在此對象中。提示用戶「AI」應該回答什麼。問題是我不能保存這個對象,所以當用戶關閉標籤或重新加載它時,「AI」學到的所有東西都消失了。我試過使用localStorage.setItem('dictionary', JSON.stringify(dictionary))(字典是對象)但它給了我"[object Object]"。所以我想知道是否有反正我可以使用Cookie?我可以使用cookie保存JavaScript對象嗎?

+0

可能的重複:http://stackoverflow.com/questions/11344531/pure-javascript-store-object-in-cookie –

+0

@JAI localstorage必須爲你做這件事..你一定錯過了什麼..提供一個小提琴爲更好的理解.. – Rayon

+1

你能給我們一個什麼「字典」的樣子的例子嗎?使用JSON可以工作,但您需要事先正確地構造數據。 – asdasd

回答

0

存儲您的對象後,您需要使用像這樣,

var dictonaryParsed = JSON.parse(localStorage.getItem('dictionary')); 

這將解決您的問題,這是因爲localStorage.setItem()將使用toString()方法從原型鏈,你會得到這個[object Object]

這是因爲在存儲到鍵值對數據庫(localStorage)之前,所有內容都轉換爲字符串。

使用stringify方法,你正在使用的對象將爲JSON.parse()方法準備好,如果不使用,你會得到類似於這樣的東西"{"a":10}",所以你需要在使用它之前解析你的對象。如果你嘗試解析不stringyfied對象,你會得到錯誤。

0

您使用的localstorage沒有問題,您是否提醒該對象並且您看到'[object Object]'?

相關問題