【发布时间】:2021-01-18 00:17:27
【问题描述】:
我使用moment.js(总共4天)每天都有不同的元素数组。
我想要做的是根据一天显示元素的数量。使用箭头日期切换器进行日期选择(第二天,前一天) 在第 1 天,我有 3 个元素(事件)。 3天前,我有2个活动等等。
我试图创建一个遍历数组的循环,如果事件的时间与当前时刻相等 => 显示元素数。但是当我也想要他时,循环并没有停止。
为了更好的理解,下面是代码:
const m = moment();
var ctrl = this;
var DEMO_EVENTS = [
{ value: 100, time: moment() },
{ value: 155, time: moment() },
{ value: 83, time: moment() },
{ value: 211, time: moment().subtract(1, 'day') },
{ value: 138, time: moment().subtract(1, 'day') },
{ value: 55, time: moment().subtract(1, 'day') },
{ value: 183, time: moment().subtract(2, 'day') },
{ value: 103, time: moment().subtract(2, 'day') },
{ value: 98, time: moment().subtract(3, 'day') }
];
var demoNumberEvents;
var index =0;
// i add my AngularJS controller logic here
ctrl.date = m.format("ddd, MMM Do YY");
ctrl.demoNumberEvents = demoNumberEvents;
$scope.eventsNumber = function() {
for(index;index < DEMO_EVENTS.length;index++)
{
ctrl.DEMO_EVENTS = DEMO_EVENTS[index];
if(index = m)
{
break
};
if (index = m.subtract(2, 'day'))
{
ctrl.demoNumberEvents = 1;
}
}
}
我有什么方法可以做到这一点?
【问题讨论】:
-
比较使用
==或=== -
index 是一个数字,而 m 是一个对象。你是说
DEMO_EVENTS[index].time === m吗?
标签: javascript arrays angularjs momentjs