Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 角度显示日期,无需时区转换_Javascript_Angularjs_Date - Fatal编程技术网

Javascript 角度显示日期,无需时区转换

Javascript 角度显示日期,无需时区转换,javascript,angularjs,date,Javascript,Angularjs,Date,我有一个对象的日期字段是“2015-01-31T00:00:00.000Z”我想在我的应用程序中显示1/31/15。问题是它在我的时区显示我的日期,而不是UTC,所以它实际上显示的是1/30/15 我环顾四周,找不到一个干净的解决方案来简单地显示日期,而不引入角度1.3或时刻。我决定在用户的帮助下创建自己的过滤器 使用$filter服务。。。 .filter('utcDate', function ($filter) { return function (theDate) {

我有一个对象的日期字段是
“2015-01-31T00:00:00.000Z”
我想在我的应用程序中显示1/31/15。问题是它在我的时区显示我的日期,而不是UTC,所以它实际上显示的是1/30/15


我环顾四周,找不到一个干净的解决方案来简单地显示日期,而不引入角度1.3或时刻。

我决定在用户的帮助下创建自己的过滤器


使用$filter服务。。。
.filter('utcDate', function ($filter) {
    return function (theDate) {
        var dateFilter = $filter('date');

        originalDate = new Date(theDate);

        currentDate = new Date();
        utcDate = millisToUTCDate(currentDate);

        millisecondsToUtc = utcDate - currentDate;

        originalDate.setHours(originalDate.getHours() + toHours(millisecondsToUtc))

        return dateFilter(originalDate, 'shortDate');
    };
});

function toUTCDate(date) {
    var _utc = new Date(date.getUTCFullYear(), date.getUTCMonth(), date.getUTCDate(), date.getUTCHours(), date.getUTCMinutes(), date.getUTCSeconds());
return _utc;
};

function millisToUTCDate(millis) {
    return toUTCDate(new Date(millis));
};

function toHours(milliseconds) {
    return Math.round(milliseconds / 1000 / 60/ 60)
}