2017-05-23 1 views
-1

Ich verwende moment.js für das Zeitformat. SO gerade jetzt bekomme ich UTC-Zeit (Zeit vom Bediener erhalten, der andere Zeitzone findet), SO möchte ich in ISO 8601 umwandeln. Ich bin in der Lage, einzelnen Wert UTC in ISO umzuwandeln. Aber ich kann das ganze Array nicht in ISO Format konvertieren.Zeitfenster von UTC in ISO-Format in moment.js konvertieren?

var time= [11:30,11:50,12:50,22:30,23:10,2:20,4:30,8:50,9:10] 

Ich möchte jeden Wert in ISO-Format konvertieren.

Antwort

1

Sie können Ihr Array durchlaufen, Ihre Eingabe mit moment(String, String) analysieren und dann toISOString() oder format() verwenden.

Hier ein Live-Beispiel:

var time= ['11:30','11:50','12:50','22:30','23:10','2:20','4:30','8:50','9:10']; 
 
var result = time.map(elem => moment.utc(elem, 'HH:mm').toISOString()); 
 
console.log(result);
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>

+0

Danke für die Antwort. Wenn Sie der Meinung sind, dass diese Frage für den anderen Benutzer nützlich ist, dann stimmen Sie diese Frage ab. –

0

Wie wäre es, die Werte zu iterieren und sie zu ersetzen?

for (i = 0; i < time.length; i++) { 
    time[i] = moment(time[i], 'hh:mm'); 
} 
0

Verwenden map()

var time = ["11:30","11:50","12:50","22:30"] 
    .map(el => moment(el, 'hh:mm')); 
-1

Sie Karte verwenden können, um jeden Wert zu konvertieren:

let converted = time.map(t => t.toISOString()); 

t.toISOString() - es ist nur zum Beispiel Sie jede Logik hinzufügen und zurückkehren umgebautes Zeit.

Verwandte Themen