如何使用javascript获取最后一个全天时间戳

How to get the last full day timestamp using javascript

本文关键字:天时 时间戳 最后一个 获取 何使用 javascript      更新时间:2023-09-26

我正在尝试获取最后一整天的开始时间戳。我可以用ruby来做,但我需要帮助用javascript来做。

(Time.now.to_s.split(" ")[0] + " 00:00:00").to_time.to_i - 86400

我试着这样做,但它没有给我正确的价值。

new Date(new Date().toString().split(" ")[0] + "00:00:00").getTime()/1000 - 86400;

如有任何帮助,我们将不胜感激。

在Ruby中:

Time.now.to_s.split(" ")[0]
#  => "2015-03-20"

在JavaScript中:

new Date().toString().split(" ")[0];
# => "Fri"

因此,您的代码将产生NaN作为输出。

试试这个:

new Date().toISOString().slice(0, 10);
# => "2015-03-20"

这将使您现有的JS为:

new Date(new Date().toISOString().slice(0, 10) + " 00:00:00").getTime()/1000 - 86400;

注意:Ruby和JavaScript的结果可能会有所不同,因为默认情况下Ruby .to_time会将字符串转换为UTC,而JS new Date会将字符串转化为GMT。您可以在其中一个(或两个)中指定时区以输出相同的答案。