2014-09-08 18 views
46

Folks, Tôi đang cố gắng hiểu API MomentJS. Cách thích hợp để có được thời gian hiện tại trên máy là gì?Moment.JS trả về dấu thời gian hiện tại

var CurrentDate = moment(); 

vs

var CurrentDate = moment().format(); 

Đang cố gắng để phân tích tài liệu của họ, chứ không phải của nó rõ ràng những gì để sử dụng.

http://momentjs.com/docs/#/query/is-a-moment/

+1

Thời gian hiện tại là gì? unix timestamp? – coma

+0

Tôi sẽ tưởng tượng RFC3339 hoặc bất kỳ id chuẩn internet nào để trả lại cho khách hàng, v.v. – Cmag

+2

Quay trở lại ứng dụng khách ... hummm ... Tôi đoán bạn sẽ nhận được nó trong các nút và gửi đến trình duyệt muốn chuyển đổi nó một lần nữa để một ví dụ momentjs? – coma

Trả lời

79

Ở đây bạn được giao một thể hiện của momentjs để CurrentDate:

var CurrentDate = moment(); 

Dưới đây chỉ là một chuỗi, kết quả từ định dạng mặc định của một trường hợp momentjs:

var CurrentDate = moment().format(); 

Và ở đây số giây kể từ tháng một ... tốt, dấu thời gian unix:

var CurrentDate = moment().unix(); 

Và đây một chuỗi như ISO 8601 (What's the difference between ISO 8601 and RFC 3339 Date Formats?):

var CurrentDate = moment().toISOString(); 

Và điều này có thể được thực hiện quá:

var a = moment(); 
var b = moment(a.toISOString()); 

console.log(a.isSame(b)); // true 
+0

điều này có được chấp nhận không? 'var now = new Date(). getTime(); \t \t \t userObject.registered = moment (now) .toDate(); ' – Cmag

+1

@Cmag, tôi không hiểu câu hỏi, nhưng chỉ cần xem xét điều này: http://jsfiddle.net/coma/bLe31qq0/ , như bạn có thể thấy ở đó, thậm chí sau một giây, cá thể thời điểm giữ cùng một lúc vì nó bị đóng băng, là hành vi giống như ngày mới(). – coma

+0

vì vậy hành vi tương tự của nó? – Cmag

20

Tuy nhiên, không có câu trả lời. Moment.js - Có thể làm bất cứ điều gì ngoại trừ một nhiệm vụ đơn giản như vậy.

Tôi đang sử dụng này:

moment().toDate().getTime() 
+1

Tôi thích cái này tốt hơn '+ moment()'. Nhiều nhân vật hơn, nhưng dễ đọc và dễ hiểu hơn. – joemaller

+0

Tôi đồng ý với @joemaller đó, các idiosyncrasies của Javascript có thể bắt bạn nếu không được chọn sớm lol –

13

Cố gắng sử dụng nó theo cách này:

var current_time = new moment().format("HH:mm"); 
+1

Craft4 là chính xác, vui lòng tham khảo: http://momentjs.com/docs/#/displaying/format/ để biết cách sử dụng 'Định dạng', nhưng không chắc chắn câu trả lời được căn chỉnh chính xác với câu hỏi. –

3

Nếu bạn chỉ muốn mili giây kể từ 01-JAN-1970, sau đó bạn có thể sử dụng

var theMoment = moment(); // or whatever your moment instance is 
var millis; 

millis = +theMoment; // a short but not very readable form 
// or 
millis = theMoment.valueOf(); 
// or (almost sure not as efficient as above) 
millis = theMoment.toDate().getTime(); 
21

moment().unix() bạn sẽ nhận được một dấu thời gian unix

moment().valueOf() bạn sẽ nhận được dấu thời gian đầy đủ

Các vấn đề liên quan