在AngularJS变量中格式化并存储JSON日期

时间:2015-11-21 14:32:56

标签: json angularjs

我正在使用返回JSON对象的API并具有以下详细信息:

id: 214609287
todolist_id: 33475634
position: 14
content: "some comment"
completed: true
created_at: "2015-10-28T14:22:58.000+05:30"
updated_at: "2015-10-28T14:31:26.000+05:30"
comments_count: 1
private: false
trashed: false
due_on: "2015-10-28"
due_at: "2015-10-28"
creator: {
    id: 7566695
    name: "some name"
    avatar_url: "a url here"
    fullsize_avatar_url: "another url here"
} - assignee: {
    id: 9329381
    type: "Person"
    name: "some name"
} - completed_at: "2015-10-28T14:31:26.000+05:30"
completer: {
    id: 9329381
    name: "another name"
}

我需要将completed_at日期以yyyy-MM-dd格式存储在AngularJS变量中,以便将其与due_on日期进行比较。我最近尝试了以下代码 -

var test = $filter('date')($scope.opendata.completed_at, 'yyyy-MM-dd');

以及其他一些代码。但都没有效果。 $scope.opendata包含JSON数据。变量test在函数内定义,返回它。

2 个答案:

答案 0 :(得分:1)

使用以下方法:

function formatDate(dateStr) {

   var date = new Date(dateStr);
   return  `${date.getFullYear()}-${date.getMonth()}-${date.getDate()}`

}

test = formatDate($scope.opendata.completed_at);

Here是小提琴。

答案 1 :(得分:0)

为什么不按照提供的格式保留日期,并在视图中使用过滤器来更改日期格式。

{{completed_at | date : 'yyyy mm dd'}}