node.js - 如何获得开始和结束月份时的平均持续时间
问题描述
我目前正在尝试为我的用户收集一些“统计数据”。
我正在使用 NodeJs 作为后端,通过 Socket.io,数据被保存到 MongoDB
我有一个“开始月份”和一个“结束月份”,它决定了用户何时开始以及用户会话何时结束。
时间存储在unix中
我将如何解决这个问题?我目前正在尝试使用这条线继续前进
activeTreatmentDuration = (maxDate - minDate) / 25920000;
解决方案
在处理日期时,我喜欢使用Moment.js。我有一个非常好的 API,并带有严格的文档。
从您的问题中不清楚您要获得什么统计信息,但是很容易例如:
- 格式化时间差异:
moment.duration(moment(endMonth).diff(moment(startMonth))).humanize();
- 以任何时间单位获取日期或持续时间的值:
moment.duration(moment(endMonth).diff(moment(startMonth))).get('month');
ETC..
推荐阅读
- java - 递归算法的大 O 复杂度
- java - Spring Boot 应用程序忽略导入的配置
- selenium - 允许自动化桌面应用程序的框架
- sql - 计算列中不同值实例的数量
- javascript - 外部加载的同一版本 jquery 的两个不同变体
- javascript - 用 momentjs 计算时间
- install4j - Install4j,“文件关联”(选择)屏幕未出现在 Unix 安装程序中
- database - DB2 Server Discovery 是否可以通过网络进行?
- bash - Bindsym 不执行 i3wm 命令
- https - ESP8266 通过 HTTPS 从 GET 请求中跳过一些数据