2017-08-14 172 views
0

我運行一個腳本,我使用的是meta refresh,因爲它可以阻止由於互聯網連接或服務器停機時間或任何東西:如何將變量存儲在本地存儲中?

<meta http-equiv="refresh" content="30"> 

腳本需要開始變量,這將更新每個腳本運行時,所以我想保存在本地存儲變量的最新值,但通過把它這樣,該值將始終被覆蓋到初始值

var myId = 47911111; 
localStorage.setItem('titles', myId); 
+0

您已經在使用'localStorage.setItem()',那麼問題 –

+0

還有什麼問題,在頁面刷新時不會被覆蓋嗎?我的意思是'myId'不會回到'47911111'? @JijoCleetus –

+0

你應該試試在這種情況下關閉 –

回答

0

如果你的瀏覽器支持這樣的本地存儲首先檢查(本地存儲將持續存在頁面刷新不像sessionStorage的

if (typeof(Storage) !== "undefined") { 
    // Code for localStorage/sessionStorage. 
    // Store value 
    localStorage.setItem("keyName", variable); 
    // Retrieve value from local storage and assign to variable 
    var myId = localStorage.getItem("keyName"); 
} else { 
    // Sorry! No Web Storage support.. 
} 
+0

正如我在問題中所述,當頁面刷新時不會被覆蓋?我的意思是'myId'不會回到'47911111'? –

+0

您需要使用localStorage – Winnie

+0

將值重新分配給myID變量對不起,您是否可以在您的答案中詳細說明該評論,並根據該答案反映該ID? –

0

假設localStorage的信息,並將我明白你的問題:

// first declare a variable but don't assign a value 
var myId; 
// then check whether your localStorage item already exists ... 
if (localStorage.getItem('titles')) { 
    // if so, increase the value and assign it to your variable 
    myId = parseInt(localStorage.getItem('titles')) + 1; 
    // and reset the localStorage item with the new value 
    localStorage.setItem('titles', myId); 
} else { 
    // if localStorage item does not exist yet initialize 
    // it with your strat value 
    localStorage.setItem('titles', 1); 
    // and assign start value to your variable 
    myId = paresInt(localStorage.getItem('titles')); 
} 
console.log(myId); 

現在每次頁面加載代碼檢查是否有localStorage的項目「冠軍」。

如果是這樣,則將「標題」的值增加1,並將結果值分配給「myId」。

如果localStorage項目尚未存在,則使用起始值進行初始化,並將起始值也分配給「myId」。

請注意,localStorage鍵和值始終是字符串,並且整數值始終轉換爲字符串。

+0

解決了這個問題,但那也不錯 –