Javascript 如何使用矩.js在数组中循环
我想使用moment.js isSame函数检查包含几个日期的数组。我是被迫使用forEach循环数组中的所有值,还是有更好的方法Javascript 如何使用矩.js在数组中循环,javascript,momentjs,Javascript,Momentjs,我想使用moment.js isSame函数检查包含几个日期的数组。我是被迫使用forEach循环数组中的所有值,还是有更好的方法 let dates=['170521','260521','200721','090821','041121']; console.log(moment('170521','DDMMYY').isame(moment(dates,'DDMMYY')); console.log(moment('260521','DDMMYY').isame(moment(dates
let dates=['170521','260521','200721','090821','041121'];
console.log(moment('170521','DDMMYY').isame(moment(dates,'DDMMYY'));
console.log(moment('260521','DDMMYY').isame(moment(dates,'DDMMYY'))代码>
类似于:
dates.forEach(date => {
if(moment(date).isSame(moment(someConstDate))) {
// Do something
}
});
您不必使用forEach
。您甚至不需要使用moment
。如果这是输入数据的格式,那么简单的字符串比较就很好了
let dates = ['170521', '260521', '200721', '090821', '041121'];
if (dates.includes('170521')) {
// ...
}
强制使用forEach的?不这取决于你对比赛做了什么-你可以使用forEach
,map
,reduce
,每个
,一些
,过滤器
。。。你的目标是什么?试着将第一次约会与安排中的日期进行比较,但比较的目的是什么?您对结果所做的操作将有助于确定应该使用什么方法进行循环。例如,如果只想知道数组中是否有一个日期,可以使用some
。如果要删除所有不匹配的日期,可以使用过滤器
。第一个日期是检查它是否匹配其中的任何日期,然后它将执行其他操作。它不会更改或删除数组中的任何内容。只是为了检查是非