2016-08-01 34 views
10

Mam tablicę dat i używam funkcji map do iteracji poprzez nią, ale nie mogę znaleźć kodu JavaScript do konwersji na liczby całkowite.Jak przekonwertować datę na liczbę całkowitą?

Jest to tablica z datami:

var dates_as_int = [ 
    "2016-07-19T20:23:01.804Z", 
    "2016-07-20T15:43:54.776Z", 
    "2016-07-22T14:53:38.634Z", 
    "2016-07-25T14:39:34.527Z" 
]; 
+1

1. Konwersja do [ 'dzień spełnienia wymogu] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date), 2. Wywołanie funkcji '' .getTime() '] (https://developer.mozilla.org/en-US/ docs/Web/JavaScript/Reference/Global_Objects/Date/getTime) – Andreas

Odpowiedz

23
var dates = dates_as_int.map(function(dateStr) { 
    return new Date(dateStr).getTime(); 
}); 

=>

[1468959781804, 1469029434776, 1469199218634, 1469457574527] 

Aktualizacja: ES6 wersja:

const dates = dates_as_int.map(date => new Date(date).getTime()) 
0

Przez int, to znaczy do czasu epoki?

new Date(2016, 8, 1).getTime()/1000 

jako funkcję:

function dateToEpoch(date) { 
    return date.getTime()/1000 
} 

i zadzwoń jak:

dateToEpoch(new Date(2016, 8, 1); 
+0

Przypuszczam, że "czas epoki" to [* wartość czasu *] (http://ecma-international.org/ecma-262/7.0/index.html#sec czas-wartości i zakres czasu)? – RobG

0

Można go uruchomić poprzez Number()

var myInt = Number(new Date(dates_as_int[0])); 

Jeśli parametr jest obiektem Date, funkcja Number() zwraca liczbę milisekund od północy 1 stycznia 1970 UTC.

Use of Number()

+3

potrzebujesz najpierw przekonwertować na datę, tam są łańcuchy w tablicy ... –

+0

Wierzę, że zrobiłem odpowiednie zmiany @AlekseyL. –

4

Oto co można spróbować:

var d = Date.parse("2016-07-19T20:23:01.804Z"); 
alert(d); //this is in milliseconds 
4

Użycie wbudowanego Date.parse funkcji, które można wprowadzać w postaci ISO8601 oraz bezpośrednio zwraca się żądaną wartość powrotną całkowita:

var dates_as_int = dates.map(Date.parse); 
+1

To powinna być najlepsza odpowiedź. Jasny i prosty kod – August

Powiązane problemy