时间戳的差异

时间:2019-10-08 01:47:57

标签: javascript google-chrome-extension

我有#include "SDL/SDL.h" #include <iostream> int main(int argc, char** argv) { SDL_Window* window = SDL_CreateWindow("title", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED,800, 500, SDL_WINDOW_OPENGL | SDL_WINDOW_SHOWN | SDL_WINDOW_RESIZABLE); while (true) { SDL_Event sdl_event; if (SDL_WaitEvent(&sdl_event)) { if (sdl_event.key.repeat == 0) { // no repeat event switch (sdl_event.type) { case SDL_QUIT: { break; } case SDL_WINDOWEVENT: { if (sdl_event.window.event == SDL_WINDOWEVENT_SIZE_CHANGED){ std::cout << sdl_event.window.data1 << " " << sdl_event.window.data2 << "\n"; } break; } } } } } return 0; } 的HH:MM:SS格式的当前时间戳,它由计时器计数,还有NewTimeSecond的HH:MM:SS格式。但不知何故我没有得到结果

RWTime = "14:42:00"
我为console.log("calc"); var time1ms = new Date(NewTimeSecond).getTime; var time2ms = new Date(RWTime).getTime; console.log(time1ms); console.log(time2ms); var res = Math.abs(time1ms - time2ms) / 1000; console.log(time1ms)

console.log(time2ms)在我的控制台中

1 个答案:

答案 0 :(得分:0)

ƒ getTime() { [native code] }的意思是getTime是一个函数,因此time1mstime2ms都被分配了getTime函数而不是结果。要调用该函数,请使用括号(),就像使用console.logMath.abs

一样

getTime函数不带任何参数,因此您只需调用它即可将括号为空

console.log("calc");
var time1ms = new Date(NewTimeSecond).getTime();              
var time2ms = new Date(RWTime).getTime();                     
console.log(time1ms);
console.log(time2ms);

var res = Math.abs(time1ms - time2ms) / 1000;      

但是,仅将24小时时间传递给日期构造函数将不起作用,因为本机日期对象无法正确解析它,并且它们将是无效日期。

但是,您可以在字符串中添加日期部分,这将允许日期正确地对其进行解析。

console.log("calc");
let NewTimeSecond = '10:20:30';
let RWTime = '14:42:00';

let someDate = '2019-01-01';

NewTimeSecond = `${someDate}T${NewTimeSecond}`; // Creates the string `2019-01-01T10:20:30'
RWTime = `${someDate}T${RWTime}`; // Creates the string `2019-01-01T14:42:00'

var time1ms = new Date(NewTimeSecond).getTime();              
var time2ms = new Date(RWTime).getTime();                     
console.log(time1ms);
console.log(time2ms);