用JavaScript划分时间跨度



我必须在JS中从Kusto查询语言中重新创建一些逻辑,并且我正在努力进行工期划分。我如何从两个持续时间中获得商,比如:

可以将两个时间跨度的值进行除法,得到它们的商。例如,1d/5h给出4.8。这使得能够将任何时间跨度值表示为另一时间跨度值的倍数。例如,要用秒来表示一个小时,只需将1小时除以1秒:1小时/1s(显而易见的结果是3600(。

(取自https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/datetime-timespan-arithmetic)

我使用的是日期fns,但我对库很灵活。

您可以简单地定义常量。例如,如果你要使用的最小单位是1秒,那么你可以输入:

const
S = 1,
M = 60,
H = M * 60,
D = H * 24,
W = D * 7;

现在,像1s这样的术语不能神奇地成为JavaScript中的有效语法,但像(2 * D) / (10 * H)这样的表达式可以正常工作。

(将答案编辑为常数使用大写,因为这是一种常见的约定(

最新更新