3 回答

TA贡献1942条经验 获得超3个赞
编码
var startDate = new Date();
// Do your operations
var endDate = new Date();
var seconds = (endDate.getTime() - startDate.getTime()) / 1000;
甚至(endDate - startDate) / 1000如注释中指出的那样更简单,除非您使用打字稿。
说明
您需要调用对象的getTime()方法Date,然后简单地将它们相减并除以1000(因为它最初以毫秒为单位)。另外,调用getDate()方法时,实际上是将月份中的日期作为1到31之间的整数(不是从零开始),而不是从调用该getTime()方法获得的时间开始,代表自1970年1月1日00:00以来的毫秒数
胡言乱语
根据与日期相关的操作的不同,您可能需要投资集成诸如date.js或moment.js之类的库,这对于开发人员而言使事情变得容易得多,但这只是个人喜好问题。
例如,在moment.js中,我们将做的moment1.diff(moment2, "seconds")很漂亮。

TA贡献1835条经验 获得超7个赞
<script type="text/javascript">
var _initial = '2015-05-21T10:17:28.593Z';
var fromTime = new Date(_initial);
var toTime = new Date();
var differenceTravel = toTime.getTime() - fromTime.getTime();
var seconds = Math.floor((differenceTravel) / (1000));
document.write('+ seconds +');
</script>

TA贡献1815条经验 获得超10个赞
您可以new Date().getTime()用来获取时间戳。然后,您可以计算结束和开始之间的差异,最后将时间戳转换ms为s。
const start = new Date().getTime();
const end = new Date().getTime();
const diff = end - start;
const seconds = Math.floor(diff / 1000 % 60);
添加回答
举报