gpt4 book ai didi

angularjs - Angular : date filter adds timezone, 如何输出UTC?

转载 作者:行者123 更新时间:2023-12-03 08:31:13 25 4
gpt4 key购买 nike

我正在使用日期过滤器以某种格式呈现 unix 时间戳。我注意到过滤器将本地时区添加到输出中。

有没有办法简单地输出确切的时间戳,而不添加任何时区信息?

输入:

talk.content.date_and_time = 1400167800 

(是 05/15/14 @ 3:30:00pm UTC)

代码:
{{talk.content.date_and_time*1000 | date:'dd-M-yyyy H:mm Z'}}

输出:
15-5-2014 17:30 +0200

如何使输出为 15:30 而不是 17:30?

最佳答案

“Z”是添加时区信息的内容。至于输出UTC,这似乎是一些困惑的主题——人们似乎倾向于moment.js .

借用此answer ,你可以在没有 moment.js 的情况下做这样的事情:

Controller

var app1 = angular.module('app1',[]);

app1.controller('ctrl',['$scope',function($scope){

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

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

$scope.toUTCDate = toUTCDate;
$scope.millisToUTCDate = millisToUTCDate;

}]);

模板
<html ng-app="app1">

<head>
<script data-require="angular.js@*" data-semver="1.2.12" src="http://code.angularjs.org/1.2.12/angular.js"></script>
<link rel="stylesheet" href="style.css" />
<script src="script.js"></script>
</head>

<body>
<div ng-controller="ctrl">
<div>
utc {{millisToUTCDate(1400167800) | date:'dd-M-yyyy H:mm'}}
</div>
<div>
local {{1400167800 | date:'dd-M-yyyy H:mm'}}
</div>
</div>
</body>

</html>

这是 plunker玩它

另见 thisthis .

另请注意,使用此方法,如果您使用 Angular 日期过滤器中的“Z”,它似乎仍会打印您的本地时区偏移量。

关于angularjs - Angular : date filter adds timezone, 如何输出UTC?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21782893/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com