2015-10-05 3 views
0

Я работаю над проектом, в котором мне нужно реализовать список дат. Я смог вытащить данные из api, однако у меня были проблемы с разбором формата в эти даты.Angular.js date parsing

Данные, которые я смог вытащить похож на этот

[["2015-10-05T13:00:00Z","2015-10-05T21:00:00Z"], 
["2015-10-06T13:00:00Z","2015-10-06T21:00:00Z"], 
["2015-10-07T13:00:00Z","2015-10-07T21:00:00Z"]] 

который сладок, что я был в состоянии тянуть ..... но как вы можете видеть, даты не являются действительно, что пользователю понадобится.

Я искал методы moment(). (http://momentjs.com/) Однако проблемы, с которыми я столкнулся, это то, что методы, которые вы можете использовать с помощью момента(), - это то, что я только мог сделать что-либо работать с одной датой, а не с массивом дат, таких как то, что я иметь.

Итак, мой вопрос в том, есть ли альтернативы моменту() или лучшему способу разбора массива дат?

ответ

3

Вы должны были бы петлю и разобрать .. Вы можете сделать это довольно просто с .map вызова (с momentjs):

var formattedDates = array.map(function(inner) { 
    return inner.map(function(d) { 
     return moment(d).format("MM/DD/YYYY hh:mm A"); 
    }); 
}).reduce(function(p, c) { 
    return p.concat(c); 
}); 

Демо: http://jsfiddle.net/6ncpspc0/

+0

Я попытался запустить этот фрагмент кода в консоль, я получаю недопустимый формат даты. Я немного манипулировал этой функцией, но не добился большого успеха. :( – kdweber89

+0

@ kdweber89 - Ahh - одна секунда. Я только что видел, что у вас есть 2-й массив: D – tymeJV

+0

@ kdweber89- в порядке - дайте ему еще одну попытку – tymeJV