javascript(angularJS):将当前时间添加到日期和格式

javascript(angularJS):将当前时间添加到日期和格式,javascript,angularjs,Javascript,Angularjs,在我的应用程序中,用户选择日期,但我也需要将当前时间发送到服务器 这是我的初始化代码: $scope.event = { 'Name': '', 'Date': $filter('date')(new Date(), 'yyyy-MM-dd'), }; 但我需要将其更改为以下格式: 2015-01-20T20:00:00Z 是真的吗?我如何将当前时间以我在此处发布的格式附加到输入值中 我是这样做的: var x = new Date(); v

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

这是我的初始化代码:

  $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;
{{1288323623006 | date:'yyyy-MM-dd HH:mm:ss Z'}}: 2010-10-29 04:40:23 +0100

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

看起来您所追求的格式是:


看看官方API中的示例:

您可以看到如下内容:

      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;
{{1288323623006 | date:'yyyy-MM-dd HH:mm:ss Z'}}: 2010-10-29 04:40:23 +0100
然后可以使用“yyy-MM-ddTHH:MM:ssZ”作为格式,而不是“yyy-MM-dd”

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

嗯,但是如果我选择未来的日期或者其他什么?我需要传递给格式化程序的是什么(输入的是日期为2061-11-20的字符串)?我不确定是否能理解。您希望
$scope.event.Date
成为将来的日期,并格式化为ISO 8601?如下:如果日期是今天(如2015年3月4日),那么也使用当前时间,但如果是将来或过去,只需将0:00添加为时间到日期,这也是我的意思:例如,您的代码获取当前的日期时间,但如何获取我输入的日期,并将其追加到时间?