我有一个像var arr = ['BUTTON','BADGE','CHECKBOX]'
这样的字符串数组
现在我需要为字符串写入if
条件,除了数组中存在的条件。我怎么做??
我是初学者,对javascript一无所知。在此先感谢您的帮助。
我试过var arr = ['BUTTON','BADGE','CHECKBOX];
if(!arr){
//code to be executed
}
但是这总是返回false。
答案 0 :(得分:4)
您可以使用indexOf:
if(arr.indexOf(test_variable) === -1){
// element doesn't exist in array
}
答案 1 :(得分:1)
我真的不明白你的问题,但也许array.some可以解决你的问题:
var someString = 'BADGE';
var arr = ['BUTTON','BADGE','CHECKBOX' ];
if (arr.some(str => str === someString)) {
console.log("Exist");
} else {
console.log("Doesn't exist");
}
答案 2 :(得分:1)
这是怎么做的:
localStorage.setItem('countDownValue', curtime); // To set the value
...
curtime = localStorage.getItem('countDownValue'); // To get the value

答案 3 :(得分:0)
首先,数组/列表的最后一个元素没有正确写成字符串,即' CHECKBOX 。你最后错过了一个单引号,所以它应该是' CHECKBOX'
var arr = ['BUTTON','BADGE','CHECKBOX];
↓
var arr = ['BUTTON','BADGE','CHECKBOX'];
其次来到你的实际查询,根据你的问题,如果数组中没有字符串,你似乎想要运行一段代码。 为此,您可以使用 array.indexOf()函数,该函数返回作为参数传递给它的数组中变量的位置/索引。如果变量不在数组中,则返回值 -1
更多相关信息: - https://www.w3schools.com/jsref/jsref_indexof_array.asp
所以代码就是: -
var arr = ['BUTTON','BADGE','CHECKBOX'];
var str = 'foo'; //string not present in the array i.e arr
if(arr.indexOf(str) === -1) {
//your code here
}
答案 4 :(得分:-3)
如果为0,则长度适用于您,当数组集中不存在元素时返回0
var arr = ['BUTTON','BADGE','CHECKBOX'];
console.log(arr.length)