将ISO DateTime转换为毫秒

时间:2013-12-05 13:20:35

标签: javascript ios datetime isodate

我有一个ISODateTime格式:

2013-11-21T20:58:03+0000 

如何在AngularJS中将其转换为毫秒。

我使用DateTime.Parse()=>它适用于Chrome但在ios上失败。 还有其他任何实现方法吗?

我的主要目的是找出当前时间与此时间之间的差异(以分钟为单位):

var diff= (new Date(new Date().getTime() - Date.parse(item['myDate']))).getMinutes();

其中item ['myDate'] = 2013-11-21T20:58:03 + 0000

1 个答案:

答案 0 :(得分:1)

为了确保它可以在任何浏览器(如iOS safari)上运行,我们可以分割时间并创建新的日期实例。

尝试:

$scope.item = {};   
$scope.item.myDate = '2013-11-21T20:58:03+0000';

var arr =  $scope.item.myDate.split(/[- :+T]/);
var fixedDate = new Date(arr[0], arr[1]-1, arr[2], arr[3], arr[4]);

var currTime = new Date().getTime();
var fixedTime = fixedDate.getTime();
var tot = currTime -  fixedTime;

var minutes = tot / 1000 / 60;

console.log('tot', tot);
console.log('minutes', minutes);

演示 Fiddle