如果没有 localStorage 键值,我试图隐藏我的 div。
通过下面的行,我仅在 localStorage 键完全删除时隐藏了一个 div,但如果 localStorage键根本没有任何值,则需要做同样的事情只是 []。
window.localStorage.getItem('items') === null
它将如何执行?
如果没有 localStorage 键值,我试图隐藏我的 div。
通过下面的行,我仅在 localStorage 键完全删除时隐藏了一个 div,但如果 localStorage键根本没有任何值,则需要做同样的事情只是 []。
window.localStorage.getItem('items') === null
它将如何执行?
OR
您可以使用运算符添加所需的条件||
var items = window.localStorage.getItem('items')
if (items === null || items.length === 0)
{
// items is null, [] or '' (empty string)
}
如果您还必须检查undefined
某个地方,您可以更改=== null
或== null
扩展类似这样的额外条件
if (items === undefined || items === null || items.length === 0)
{
// items is undefined, null, [] or '' (empty string)
}
编辑:这是您可以直接获取数组的方法
var items = JSON.parse(window.localStorage.getItem('items'))
if (items === null || items.length === 0)
{
// items is null or []
}
简单地说:
if (!localStorage.nameOfYourLocalStorage) {
// do the following if the localStorage.nameOfYourLocalStorage does not exist
}
它如何有用的一个例子:
if (!localStorage.nameOfYourLocalStorage) {
localStorage.nameOfYourLocalStorage = defaultValue;
}
此处脚本将检查 localStorage 名称是否不存在,如果不存在,它将使用默认值创建它。
如果您希望它在它确实存在时起作用,您可以在 if 块之后添加else以继续,或删除 ' !' 来自if 块条件。
Storage.prototype.has = function(key) {
return (key in this && !(key in Storage.prototype));
};