我正在编写一个NodeJS应用,根据最近上传的YouTube视频发送通知。
我从youtube获得2015-06-10T20:18:45.000Z的ISO 8601格式字符串。该字符串是视频上传的时间。
如何获取该字符串,将其转换为我当地时区的Date对象,得到它的时间。然后看看从现在开始的视频到底有多久?
我基本上需要知道从现在开始的视频到底有多久。如果有一种不同于我上面描述的那种方式,那也没关系。
我尝试了这个但它不起作用 - 因为我相信时区差异
var temp_one = new Date('2015-06-10T20:18:45.000Z');
var temp_two = new Date();
var difference = temp_two - temp_one
答案 0 :(得分:0)
您所描述的内容确实有用 - 只要浏览器支持解析您提供的ISO8601格式化字符串。较旧的浏览器(例如IE8)不直接支持此功能。
difference
变量将返回自您提供的日期以来经过的毫秒数。如果你想在其他单位中使用它,你可以相应地划分数字:
var seconds = difference / 1000;
var minutes = difference / 60000;
var hours = difference / 3600000;
如果您想要更精细的内容,可以使用moment.js。
例如:
moment("2015-06-10T20:18:45.000Z").fromNow() // "7 hours ago"