[英]How to avoid resetting global variables in a js file
我正在嘗試將localStorage用於小型站點(少於10頁)中的全局變量。 我想在js文件中聲明變量,但不要在每次頁面加載時都將其重置。
除了阻止/重置另一個全局變量之外,還有什么方法可以防止重新加載幾行?
/** placed in a sj file **/
if(localStorage['lock'] != '1') {
localStorage['val1'] = '0';
localStorage['val2'] = '0';
localStorage['val3'] = '0';
localStorage['lock'] = '1';
}
本機本地存儲沒有任何鎖定能力。
您發現的解決方案對我來說是整潔的。 它的優點是速度快(因為它只檢查一個密鑰)。
但是,您可能希望在已經完成的操作的基礎上添加一小部分抽象。 但這本質上是一個品味問題(此處的性能影響很小)。
function freezeInLocalStorage(key, value) {
if (typeof localStorage[key] !== 'string') {
localStorage[key] = value;
}
}
freezeInLocalStorage('val1', '0');
freezeInLocalStorage('val2', '0');
freezeInLocalStorage('val3', '0');
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.