首頁  >  問答  >  主體

實作 localStorage 值為 true:逐步指南。

我想知道 localStorage 是否可以有布林值而不是字串?

僅使用 JS,不使用 JSON,如果不可能或可以透過 JS 以不同的方式完成,請告訴我,謝謝

http://jsbin.com/qiratuloqa/1/

//How to set localStorage "test" to true?

test = localStorage.getItem("test");
localStorage.setItem("test", true); 

if (test === true) {
  alert("works");
} else {
  alert("Broken");
}



/* String works fine.

test = localStorage.getItem("test");
localStorage.setItem("test", "hello"); 

if (test === "hello") {
  alert("works");
} else {
  alert("Broken");
}

*/


#
P粉195200437P粉195200437361 天前730

全部回覆(1)我來回復

  • P粉197639753

    P粉1976397532023-10-24 09:37:10

    不,網路儲存僅儲存字串。為了儲存更豐富的數據,人們通常在儲存時使用 JSON 和 stringify,在檢索時使用解析。

    儲存:

    var test = true;
    localStorage.setItem("test", JSON.stringify(test));

    檢索:

    test = JSON.parse(localStorage.getItem("test"));
    console.log(typeof test); // "boolean"

    不過,您並不需要JSON 來取得布林值;您可以只使用"" 表示false,使用任何其他字串表示true,因為"" 是一個“ falsey」值(當被視為布林值時強制為false 的值) )。

    回覆
    0
  • 取消回覆