1: 時間戳 timeStamp 獲取的幾種方法及其優劣, 第一種只能精確到秒, 故不推薦使用, 最最常用的也是最官方的是第三種, 通過原型方法進行調用獲取精確到毫秒數 :
var timestamp1 = Date.parse(new Date()); // 結果:1477808630000, 不推薦這種辦法,毫秒級別的數值被轉化為000
var timestamp2 = (new Date()).valueOf(); // 結果:1477808630404, 通過valueOf()函數返回指定對象的原始值獲得准確的時間戳值
var timestamp3 = new Date().getTime(); // 結果:1477808630404,通過原型方法直接獲得當前時間的毫秒值,准確
var timetamp4 = Number(new Date()) ; // 結果:1477808630404, 將時間轉化為一個number類型的數值,即時間戳
2: 獲取非當前時間的時間戳 (如: 2050年11月11日):
var timestamp_now = new Date().getTime(); // 獲取到當前精確時間戳毫秒數 var timestamp_2050 = new Date('2050/11/11 00:00:00').getTime(); // 結果:2551708800000, 獲取2050年11月11日時間戳, 精確到毫秒
3: 利用時間戳相減得到倒計時總毫秒數:
// 算出中間差並且已毫秒數返回; 除以1000將毫秒數轉化成秒數方便運算;
var countDown = (timestamp_2050 - timestamp_now)/1000; // 獲取天數 1天 = 24小時 1小時= 60分 1分 = 60秒 var oDay = parseInt(countDown/(24*60*60)); // 獲取小時數 // 特別留意 %24 這是因為需要剔除掉整的天數; var oHours = parseInt(countDown/(60*60)%24);
// 獲取分鍾數 //同理剔除掉分鍾數 var oMinutes = parseInt(countDown/60%60); // 獲取秒數 // 因為就是秒數 所以取得余數即可 var oSeconds = parseInt(countDown%60); // 下面就是插入到頁面事先准備容器即可; var html = "<span>" + p(oDay) + "天</span>"+ "<span>" + p(oHours) + "時</span>" + "<span>" + p(oMinutes) + "分</span>" +"<span>" + p(oSeconds) + "秒</span>"; document.write(html); //別忘記當時間為0的,要讓其知道結束了; if(countDown < 0){ document.write('2050年11月11日, 你脫單了嗎? 祝你光棍節快樂!');
}
4: new Date()對象的常見用法, 可以通過new Date() 實例對象上的方法進行獲取 年份 月份(月份數從0開始代表1月 11結束代表12月) 日期 小時 分鍾 秒 以及相應的 星期幾(0開始為星期日) :
// Date() 對象, 獲取年月日時分秒, 星期幾 // 獲取時間對象 => date_tody => Mon May 20 2019 12:05:27 GMT+0800 (中國標准時間) // 獲取年 => date_tody.getFullYear() // 獲取月 => date_tody.getMonth() => 需要 +1 才是真正月份 // 獲取日 => date_tody.getDate() // 獲取時 => date_tody.getHours() // 獲取分 => date_tody.getMinutes() // 獲取秒 => date_tody.getSeconds() // 獲取星期幾 => date_tody.getDay() => 0(星期日) 1(星期一) 2(星期二) 3(星期三) 4(星期四) 5(星期五) 6(星期六)
喜歡的話記得點個贊, 何少在此謝過!