检查localStorage中的值是否以字符串和console.log()值名称启动



我有一个问题可能很难解释。。。但我会尽力的。所以,我在localStorage中有3个值,我不知道他们的名字。假设有a、b和c。a值等于"早上好",b值等于"下午好",c值等于"晚上不好"。如果A值、B值或C值以(("好"开头,我想console.log((。所以我真的不知道该怎么做。。。有人能帮我吗?谢谢演示。

您可以迭代本地存储并检查它们的值

for (var i = 0, i < localStorage.length; i++) {
var value = localStorage.getItem(localStorage.key(i));
if (value && value.startsWith('Good') console.log('found it!', key, value);
}

或者更简单地说:

var valuesWithGood = Object.keys(localStorage).filter(x => localStorage.getItem(x).startsWith('Good')))

https://www.w3schools.com/jsref/jsref_startswith.asp

javascript中有startswith函数,试试吧!

您可以将字符串"下午好">作为参数传递,它将遍历本地存储以检查是否存在。

使用Object.values((方法,如果函数与传递给函数的字符串匹配,则函数将返回true

const findValue = (value) => Object.values(localStorage).indexOf(value) > -1;
console.log(findValue('Good afternoon')); // true

或者,如果您需要在Internet Explorer浏览器中使用此功能,我们可以使用Object.keys((.some((TR

const findValue = (value) => Object.keys(localStorage).some(key => (localStorage[key] === value));
console.log(findValue('Good afternoon')); // true

仅供参考:startWith((不受Internet Explorer 支持

Уоu可以执行以下操作:

Object.keys(localStorage).filter(function(x) {
if( x === 'someValue_1' ||
x === 'someValue_2' ||
x.startsWith('otherValue_')
){
console.log(x);
}
});

最新更新