我有這個if語句,如果變量值不等於localStorage值,則執行代碼。檢查localStorage中是否存在變量值
for(i=0;i<tweets.length;i++){
tweetID = tweets[i][0].id_str;
if(tweetID != localStorage['tweet_id']){
alert("new tweet");
localStorage['tweet_id'] = tweetID;
console.log(localStorage['tweet_id']);
}
}
我的問題是它總是進入if語句,指示該值永遠不會等於localStorage值。第一次運行代碼時,它總是會進入if語句,因爲'tweet_id'localStorage項目未定義。一旦它進入內部,它應該將'tweetID'值寫入localStorage值,就像我在代碼中看到的一樣。頁面每30秒刷新一次,如果沒有新的推文,這些值應該匹配,並且不會進入if語句。
事實並非如此。我究竟做錯了什麼?
通過使用console.log,這些值在第一次進入if語句後匹配,因此除非tweetID的值發生更改,否則不應再次進入。任何想法將不勝感激!
好吧,我會給它一個去,讓你知道我怎麼下去! – Tom 2013-03-17 13:55:18
第二種方法正確地將JSON輸出轉換爲字符串,但是在第一次調用之後它仍然進入if語句的內部。這與if語句中的'localStorage ['tweet_text'] = tweeting'行有什麼關係,可能需要更改? – Tom 2013-03-17 14:16:11
@Tom,你在使用chorme嗎?您可以嘗試通過調試後立即查看'localStorage ['tweet_text']'的值是什麼(也檢查'tweeting',也許它是空的?) – 2013-03-18 06:05:52