我在javascript中有以下内容:
var colors = ["dark", "light"];
if (localStorage.themeColor) {
如何修改它不仅可以检查是否设置了localStorage.themeColor 检查它是否是数组中的两个值之一?
答案 0 :(得分:1)
您可以将indexOf与现有的themeColor检查结合使用:
if(localStorage.themeColor && colors.indexOf(localStorage.themeColor) > -1) {
// Do stuff
}
答案 1 :(得分:1)
您可以这样说:
var colors = ["dark", "light"];
if (localStorage.themeColor && colors.indexOf(localStorage.themeColor) != -1) {
对于indexOf,请参阅:
答案 2 :(得分:0)
for(var i=0;i<colors.length;i++)
{
if(localStorage.themeColor==colors[i])
{
alert(colors[i]);
}
else{
alert("colors not set");
}
答案 3 :(得分:0)
colors.indexOf("dark") !== -1
如果传递的参数在颜色中不存在
,则indexOf返回-1答案 4 :(得分:0)
你可以像这样解决它
var colors = ["dark", "light"];
if (localStorage.themeColor && colors.indexOf(localStorage.themeColor) > -1) {
// Your Code...
}
我在localStorage.themeColor == light
和localStorage.themeColor is undefined
答案 5 :(得分:-1)
你应该像这样创建一个原型
Array.prototype.contains = function(elem)
{
for (var i in this)
{
if (this[i] == elem) return true;
}
return false;
}
你的阵列在这里
var colors = ["dark", "light"];
最后使用colors.contains("dark")
调用该函数//这将返回true