日期数组中的Javascript indexOf总是产生-1

时间:2018-07-24 08:46:55

标签: javascript arrays datetime vue.js

我在检查日期是否在数组中时遇到问题。

我指的是这篇文章How to correctly use JavaScript indexOf in a date array

但是当我在项目中使用它时,它始终为-1。

这是我的代码

for (var current = dateStart; current <= dateEnd; current.setDate(current.getDate() + 1)) {
    console.log(this.leaveState.currentHoliday.map(Number).indexOf(+current));
}

我需要检查current日期是否在currentHoliday数组中。

1 个答案:

答案 0 :(得分:0)

我认为映射不需要循环到您的数组中。 和-1表示您的数组中不存在日期。也许是因为在每个循环中,您都会在看到实际日期之前向其中添加一天。

我认为您可以尝试:

    var alldays = [...];
    //you should eliminate these two codes
//    datestart = something;
//  dateend = something;
    var holiday;
    for(var i in alldays){
           console.log(alldays.map(Number).indexOf(this.leaveState.currentHoliday));
    }