如何从JavaScript获取日期时间?

时间:2017-02-15 09:42:54

标签: javascript angularjs

我需要从2017-02-15T09:37:16.087Z获得时间。如何将其转换为通用格式时间戳?我的时间是2017-02-15T09:37:16.087Z。这是我的代码:

<script>
  var app = angular.module('myApp', []);
  app.controller('myCtrl', function ($scope, $http) {
    $http.get('url', {})
    .then(function (response) {
      $scope.names = response.data;
    });
  });
</script>
<div ng-app="myApp" ng-controller="myCtrl" align="center">
  <table>
    <tr>
      <td>device time stamp</td><td>{{names.timestamp}}</td>
    </tr>
  </table>
</div>

4 个答案:

答案 0 :(得分:2)

item.date = $filter('date')(item.date, "dd/MM/yyyy"); // for conversion to string

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

这解释了如何使用日期过滤器来获取日期时间。

答案 1 :(得分:1)

将moment.js库与工作日期结合使用。

http://momentjs.com/docs/

答案 2 :(得分:1)

Date()函数可能有帮助

    <script type="text/javascript">
       var dt = Date();
       document.write("Date and Time : " + dt ); 
    </script>

reference

reference2

答案 3 :(得分:1)

如果您的日期是RFC2822或ISO 8601日期字符串,则可以使用new Date(myDateString)获取设置为日期的本机JS Date对象。您的日期字符串看起来像ISO 8601日期,所以应该是正确的其他日期格式使用JS本机方法来解析日期可能是不一致和不可靠的跨浏览器。

获得Date对象后,您可以使用其.toLocaleString()将其转换为本地化日期。

      var app = angular.module('myApp', []);
      app.controller('myCtrl', function ($scope, $http) {
        $http.get('url', {})
        .then(function (response) {
          $scope.names = response.data;
          $scope.names.timestamp = new Date($scope.names.timestamp).toLocaleString(); // Parse the date to a localized string
        });
      });

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/parse有很多关于解析日期字符串的信息。

有关toLocaleString https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString

的更多信息

解析和格式化日期和时间可能有点牵扯 - 可能值得考虑使用Angular的内置方法或者其他人提出的想法我只是简单地提供了这个答案作为完整性的起点,对于那些想要原生解决方案的人来说