Javascript 在循环的最后一次迭代时发出警报

Javascript 在循环的最后一次迭代时发出警报,javascript,typescript,Javascript,Typescript,嗨,所以我读了很多关于这个的问题。。他们中的大多数人都会丢弃我的数据,或者我就是无法让他们在最后一次迭代中实际运行 for(const[m, value] of datesLess) { console.log("Logging M:" + m); if(startD == m || endD == m){ console.log(m) takendates.

嗨,所以我读了很多关于这个的问题。。他们中的大多数人都会丢弃我的数据,或者我就是无法让他们在最后一次迭代中实际运行

for(const[m, value] of datesLess) {
          console.log("Logging M:" + m);
        
            if(startD == m || endD == m){
              console.log(m)
              takendates.push(m);
              if (m === datesLess.length - 1) {
                    alert("The following Bookings are taken:"+takendates.join("\n"));
              }
            }else{
              this.logentry(startDay,startMonth,startYear,endDay,endMonth,endYear,entryinfo);
            }
          }

本质上,我试图在循环的最后一次迭代中显示警报,以便用户可以看到哪些日期不正确,而只是显示一个没有详细信息的弹出窗口

我很确定您真正想做的是在循环后显示警报


为什么不在循环后显示警报(假设
takendates
的长度大于1)?目前,只有当最后一次迭代恰好进入了
if
条件时,这才有效,这可能不是你想要的。你知道我怎么想的,你100%正确,看到我的答案了吗
const takenDates = [];
for(const[m, value] of datesLess) {
  console.log("Logging M:" + m);
    
  if(startD == m || endD == m){
     console.log(m)
     takendates.push(m);
  }else{
     this.logentry(startDay,startMonth,startYear,endDay,endMonth,endYear,entryinfo);
  }
}
if(takendates.length) {
    alert("The following Bookings are taken:"+takendates.join("\n"));
}