javascript(angularJS):添加当前时间和格式

时间:2015-03-04 14:25:44

标签: javascript angularjs

在我的应用用户选择日期,但我也需要发送到服务器当前时间。

这是我的初始代码:

  $scope.event = {
    'Name': '',
    'Date': $filter('date')(new Date(), 'yyyy-MM-dd'),
  };

但我需要将其更改为以下格式:

2015-01-20T20:00:00Z

真的吗?我如何将当前时间附加到我在此处发布的格式的输入值?

我是这样做的:

      var x = new Date(); 
      var h = x.getHours(); 
      var m = x.getMinutes(); 
      var s = x.getSeconds(); 
      var z = x.getTimezoneOffset();
      $scope.event.Date = $scope.event.Date + 'T' + h + ':' + m + ':' + s + z;

但似乎这段代码很难看,也许我做错了什么?

2 个答案:

答案 0 :(得分:2)

看起来您所使用的格式为ISO 8601格式:

$scope.event.Date = new Date().toISOString(); // "2015-03-04T14:28:19.616Z"

答案 1 :(得分:0)

查看官方API中的示例:

https://docs.angularjs.org/api/ng/filter/date

您可以看到以下内容:

{{1288323623006 | date:'yyyy-MM-dd HH:mm:ss Z'}}: 2010-10-29 04:40:23 +0100

然后您可以使用'yyyy-MM-ddTHH:mm:ssZ'作为格式而不是'yyyy-MM-dd'

$scope.event = {
    'Name': '',
    'Date': $filter('date')(new Date(), 'yyyy-MM-ddTHH:mm:ssZ'),
  };