js中Date對象的構造

我所遇到的情景如下:
我通過serve端向瀏覽器的request發送響應,響應中包含time字段,由於在服務端使用int64來存儲時間相對節約內存和方便,然後再在客戶端進行time_t 轉 Date. 以下記錄解決方案。

JS中的Date對象:
https://www.w3school.com.cn/jsref/jsref_obj_date.asp
Date對象的構造方法:
  1. new Date()
var now = new Date();
console.log(now) //Thu Sep 19 2019 16:13:08 GMT+0800 (中國標準時間)
  1. new Date(value)
// @value: 這個構造方法的參數是一個Number型,表示自1970年1月1日00:00:00 UTC(the Unix epoch)以來的毫秒數,忽略了閏秒。
var time1 = new Date(1000);
var time2 = new Date(2000.2);
var time3 = new Date(2000.8);
console.log(time1); //Thu Jan 01 1970 08:00:01 GMT+0800 (中國標準時間)
console.log(time2); //Thu Jan 01 1970 08:00:02 GMT+0800 (中國標準時間)
console.log(time3.getMilliseconds()); //0

//node
var time4 = new Date(1000);
console.log(time4); //1970-01-01T00:00:00.001Z
  1. new Date(dateString)
//@dateString: 字符串應該能被Date.parse()方法正確識別,即符合IETF-compliant RFC 2822 timestamps或version of IOS8601。
var time1 = new Date('2019/9/9');
var time2 = new Date('2019/09/09');
var time3 = new Date('2019-9-9');
var time4 = new Date('2019-09-09');
var time5 = new Date('2019 9 9');
var time6 = new Date('2019/9/9 12:20:05');
var time7 = new Date('2019-9-9 12:70:100');
var time8 = new Date('2019 9 9 14 0 1');
var time9 = new Date('2019/09/09 -12:20:13');
var time10 =new Date("February 3,2009 12:30:15");
console.log(time1); //Mon Sep 09 2019 00:00:00 GMT+0800 (中國標準時間)
console.log(time2); //Mon Sep 09 2019 00:00:00 GMT+0800 (中國標準時間)
console.log(time3); //Mon Sep 09 2019 00:00:00 GMT+0800 (中國標準時間)
console.log(time4); //Mon Sep 09 2019 08:00:00 GMT+0800 (中國標準時間)
console.log(time5); //Mon Sep 09 2019 00:00:00 GMT+0800 (中國標準時間)
console.log(time6); //Mon Sep 09 2019 12:20:05 GMT+0800 (中國標準時間)
console.log(time7); //Invalid Date
console.log(time8); //Invalid Date
console.log(time9); //Invalid Date
console.log(time10); Tue Feb 03 2009 12:30:15 GMT+0800 (中國標準時間)
  1. new Date(year,monthIndex[,day[,hours[,minutes[,seconds[,milliseconds]]]]])
var time1 = new Date(2019,2);
var time2 = new Date(2019.3,'5');
var time3 = new Date(2019,4,-3);
var time4 = new Date(2019,5,10,13,70,100,50);
console.log(time1); //Fri Mar 01 2019 00:00:00 GMT+0800 (中國標準時間)
console.log(time2); //Sat Jun 01 2019 00:00:00 GMT+0800 (中國標準時間)
console.log(time3); //Sat Apr 27 2019 00:00:00 GMT+0800 (中國標準時間)
console.log(time4); //Mon Jun 10 2019 14:11:40 GMT+0800 (中國標準時間)
Reference:

[1] https://www.w3school.com.cn/jsref/jsref_obj_date.asp
[2] https://www.cnblogs.com/conan-lv/archive/2019/09/19/11551398.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章