Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript-检查数组的值_Javascript_Arrays - Fatal编程技术网

Javascript-检查数组的值

Javascript-检查数组的值,javascript,arrays,Javascript,Arrays,我有一个简单的银行假期数组: var bank_holidays = ['06/04/2012','09/04/2012','07/05/2012','04/06/2012','05/06/2012','27/08/2012','25/12/2012','26/12/2012','01/01/2013','29/03/2013','01/04/2013','06/05/2013','27/05/2013']; 我想做一个简单的检查,看看某些日期是否作为该数组的一部分存在,我尝试了: if('0

我有一个简单的银行假期数组:

var bank_holidays = ['06/04/2012','09/04/2012','07/05/2012','04/06/2012','05/06/2012','27/08/2012','25/12/2012','26/12/2012','01/01/2013','29/03/2013','01/04/2013','06/05/2013','27/05/2013'];
我想做一个简单的检查,看看某些日期是否作为该数组的一部分存在,我尝试了:

if('06/04/2012' in bank_holidays) { alert('LOL'); }
if(bank_holidays['06/04/2012'] !== undefined) { alert 'LOL'; }
还有其他一些解决方案,我也尝试用一个简单的“x”替换所有转发的斜杠,以防引起问题

如有任何建议,将不胜感激,谢谢


(编辑)如果您不关心传统浏览器,这里有一个jsFiddle-

if ( bank_holidays.indexOf( '06/04/2012' ) > -1 )
如果您确实关心传统浏览器,那么在上有一个可用的垫片。否则,jQuery将提供一个等效函数:

if ( $.inArray( '06/04/2012', bank_holidays ) > -1 )
试试这个:

// this will fix old browsers
if (!Array.prototype.indexOf) {
  Array.prototype.indexOf = function(value) {
    for (var i = 0; i < this.length; i++) {
      if (this[i] === value) {
        return i;
      }
    }

    return -1;
  }
}

// example
if ([1, 2, 3].indexOf(2) != -1) {
  // yay!
}
//这将修复旧浏览器
if(!Array.prototype.indexOf){
Array.prototype.indexOf=函数(值){
for(var i=0;i
这应该可以做到:

for (var i = 0; i < bank_holidays.length; i++) {
    if (bank_holidays[i] === '06/04/2012') {
        alert('LOL');
    }
}
for(变量i=0;i

应该是另一种方式:
arr.indexOf(value)
Oops,我从来都不记得了;o) @AlanKuras,jQuery版本将如此。或者,如果你在MDN上添加垫片,它就会发生。@Nick,我很同情你…@Nick,它应该能工作。。。就计算复杂性而言,检查完整数组是无效的绝对垃圾和荒谬的微观优化建议-正如OP声明的,它是一个简单数组,如果存在匹配,OP总是可以中断,因此不检查完整数组。