如何计算表中的条目?
Posted
技术标签:
【中文标题】如何计算表中的条目?【英文标题】:How to count entries in a table? 【发布时间】:2018-06-22 23:19:33 【问题描述】:你好我写了一个函数来计算当前时间和过去日期之间的天数。因此,如果差异大于 250,我会说 ngif = write old!
所以现在我想计算表格中的条目并将它们放入警报框中。
这是我的服务代码和 datediff 函数
this.todoService.getTodos()
.then(td =>
for(let i=0; i<td.todos.length;i++)
console.log(td.todos[i]);
td.todos[i]["diffDays"]= this.dateDiff(new Date(),td.todos[i]["time"]);
this.todos = td.todos;
)
private dateDiff(date1, date2)
const daydiff = moment(date1).diff(moment(date2), "days");
return Math.abs(daydiff);
Ngif 代码
<td><div *ngIf="todo.diffDays >250">old</div> </td>
所以现在我有一个警报框来计算表格的条目。
<div *ngIf="todos.length >= 0 " class="Box">
<div align="center" class="alert alert-info" role="alert">
<strong>There are todos.length Entries.</strong>
</div>
</div>
所以现在的问题是:我应该怎么做才能计算旧条目?
谢谢!
【问题讨论】:
在数组上调用过滤器,去掉不是'旧'的,新数组的长度就是你的答案 你有我的代码的例子吗?我不明白。这似乎很容易,但我不明白 【参考方案1】:你可以做类似这样的事情:
-
创建函数
初始化计数器
迭代
todos
,如果diffDays > 250
,计数器加1
退货计数器
这是大概的代码(可能会有些不同,但我想你会明白主要的想法):
countOldEntries(): number
let counter: number = 0;
this.todos.forEach(td =>
td["diffDays"] > 250 ? counter++ : null;
);
return counter; // will return the number of 'todos' with 'diffDays > 250'
如果您不需要将此项目存储到新数组(例如),则上述方式是最便宜的方式之一。
【讨论】:
我不明白你有确切的代码吗?我的代码?以上是关于如何计算表中的条目?的主要内容,如果未能解决你的问题,请参考以下文章