[英]How to subtract some Hours from current Time in AngularJS
我正在为我的应用程序使用AngularJS,日期对象是$ scope.ProductionDate。
从2017年2月21日5:00 AM(2月21日)至2017年2月22日4:59 AM(2月22日)
我希望ProductionDate的值为2017-02-21。
PS这里2月21日只是一个示例。 每天我都希望在给定的时间段具有相同的值。
我能知道该怎么做吗?
function Ctrl($scope) { $scope.ProductionDate = new Date(); }
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> <div ng-app ng-controller="Ctrl"> ProductionDate: {{ProductionDate | date:'yyyy-MM-dd'}}<br/> </div>
您可以从Date()对象中减去javascript中的分钟和小时。
function Ctrl($scope)
{
var now = new Date();
now.setHours(now.getHours()-4);
now.setMinutes(now.getMinutes()-59);
$scope.ProductionDate = now;
}
您似乎要减去5小时,以便显示较早的日期。 这是一条SO帖子,解释了如何修改Date
对象: 向Javascript Date对象添加小时数? (不要管标题-您可以使用相同的原理减去小时数)。
也可以通过设置所需的时区来完成相同的操作。
只需检查日期时间是否在0到5之间
function Ctrl($scope)
{
var now = new Date();
if(now.getHours() < 5 && now.getHours() >= 0){
// Subtract one day
now.setDate(now.getDate() - 1);
}
$scope.ProductionDate = now;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.