AngularJs将字符串datetime转换为datetime对象

时间:2016-10-28 06:05:20

标签: angularjs

我需要将“10-28-2016 10:27:14 AM”字符串日期时间转换为angularJs的日期时间2016年10月28日星期五12:04:16 请帮助

4 个答案:

答案 0 :(得分:2)

视图

<p>{{'10-28-2016 10:27:14 AM' | filter}}</p>

过滤器和控制器

angular
    .module('myApp',[])
    .run(function($rootScope){
        $rootScope.title = 'myTest Page';
    })
    .controller('testController', ['$scope', function($scope){

    }]).filter('filter', function($filter) {

return function(input) {

var date = new Date(input);
return($filter('date')(date, 'EEE MMM dd yyyy HH:mm:ss') );
  }
});

答案 1 :(得分:0)

您可以使用默认的javascript方法new Date("10-28-2016 10:27:14 AM")来生成

答案 2 :(得分:0)

最好的办法是阅读MDN Date文档。这是一个例子:

const date = new Date('10-28-2016 10:27:14 AM')

console.info(date.toDateString())
console.info(date.toTimeString())
console.info(date.toUTCString())

答案 3 :(得分:0)

最好的方法应该是使用moment.js或本机地将string-date转换为Date对象,其中首先出现字符串(您要么通过API或用户的输入获取它)。 http://momentjs.com/docs/#/parsing/string-format/

然后只需使用angular的内置日期过滤器来显示格式化的值,例如:

{{ date_expression | date : format : timezone}}

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

当您准备好将日期发送回服务器时,您应将其转换为UTC字符串并将其保留在数据库中,以避免所有时区问题。

date.toUTCString();

其中date是有效的Date对象,之前存储过。