gpt4 book ai didi

javascript - 如何使用 moment.js 减去两次并将其与分钟数进行比较

转载 作者:行者123 更新时间:2023-11-27 22:31:40 27 4
gpt4 key购买 nike

我正在努力实现一个 JS 函数来镜像我的 Ruby 代码中的函数。

Ruby 代码:

def autoextending?
online_only? && ((actual_end_time - Time.now) <= autoextend_increment.minutes)
end

JS 代码:

item.autoextending = function() {
var self = this;
var end_time = moment(self.actual_end_time);
return (self.online_only && self.status == "accepting_bids" && ((end_time - moment()) <= self.autoextend_increment*60));
};

一些信息:

  • self.autoextend_increment 将返回一个数字,例如 5,它代表分钟数。
  • 我需要(end_time - moment())的评估以秒数形式返回差异,以便我可以将其与 autoextend_increment 进行比较正确地

感谢任何帮助。

最佳答案

moment使用 Date 在幕后,它作为原始值表示为自纪元以来的时间(以毫秒为单位)。所以我们马上就知道 moment 中的算术将产生以毫秒为单位的值:

item.autoextending = function() {
var self = this;
var end_time = moment(self.actual_end_time);
return (self.online_only && self.status == "accepting_bids" && (((end_time - moment()) / (1000 * 60)) <= self.autoextend_increment));
};

((end_time - moment()) / (1000 * 60))将为您提供一个以分钟为单位的值(一秒为 1000 毫秒,一分钟为 60 秒)。

你说self.autoextend_increment已经是几分钟了,所以不需要额外的算术。如果你真的想以秒为单位进行比较,你可以:((end_time - moment()) / 1000) <= self.autoextend_increment * 60

您也可以将转换写为 (end_time - moment()) / 6000但出于演示目的,我对这些数字进行了分割。

关于javascript - 如何使用 moment.js 减去两次并将其与分钟数进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39517985/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com