检查本地存储值是否等于

Check if local storage value is equal to

本文关键字:是否 存储 检查      更新时间:2023-09-26

我想知道如何检查存储在本地存储中的项的值是true还是false。

这就是我所拥有的,但是if语句不起作用。

function setCBT(){
localStorage.setItem('testObject', true);
}

function alertLocalStorage(){
var object = localStorage.getItem('testObject');
if(object == true) {
   alert("This item is true");
}
else {
       alert("This item is false");
}
}

Safari、WebKit、Chorme、Firefox和IE的所有实现都遵循旧版本的WebStorage标准,其中存储项的值只能是字符串。

因此,您需要将值与字符串进行比较:

 if(object == "true") {

这是CMS发布的Alternative

您可以简单地使用

if(object) { 
    // true 
}

为什么不使用JSON.parse()JSON.parse()方法将字符串解析为JSON,可以选择转换解析产生的值。

if(JSON.parse(object)) {
   alert("This item is true");
}

注意使用JSON.parse()

JSON.parse('{}');              // {}
JSON.parse('true');            // true
JSON.parse('"foo"');           // "foo"
JSON.parse('[1, 5, "false"]'); // [1, 5, "false"]
JSON.parse('null');            // null

JSON.parse()