jquery sessionStorage 布尔值意外更改为字符串
jquery sessionStorage boolean value unexpectedly changed to string
sessionStorage.setItem("loadCase", false);
if (sessionStorage.getItem("loadCase")){
alert("Hello!")
} else {
alert("Bye")
}
我期待“再见”但得到“你好!”
但是,当我改变条件时,它起作用了
sessionStorage.setItem("loadCase", false);
if (sessionStorage.getItem("loadCase")=="true"){
alert("Hello!")
} else {
alert("Bye")
}
我可以知道为什么当我将一个项目设置为布尔值但 return 为来自 sessionStorage 的字符串时吗?
一般是SessionStorage,把数据当作一个字符串,不管你在里面存的是什么data/type,最好用JSON parse
和stringify
方法到 serialize
和 deserialize
数据,
请往下看
var value = sessionStorage.getItem("loadCase");
console.log(JSON.parse(value) === true); // true
sessionStorage.setItem("loadCase", false);
if (sessionStorage.getItem("loadCase")){
alert("Hello!")
} else {
alert("Bye")
}
我期待“再见”但得到“你好!”
但是,当我改变条件时,它起作用了
sessionStorage.setItem("loadCase", false);
if (sessionStorage.getItem("loadCase")=="true"){
alert("Hello!")
} else {
alert("Bye")
}
我可以知道为什么当我将一个项目设置为布尔值但 return 为来自 sessionStorage 的字符串时吗?
一般是SessionStorage,把数据当作一个字符串,不管你在里面存的是什么data/type,最好用JSON parse
和stringify
方法到 serialize
和 deserialize
数据,
请往下看
var value = sessionStorage.getItem("loadCase");
console.log(JSON.parse(value) === true); // true