終於跳票清單了?! 其實只是想改寫別的啦。況且開頭也沒說一定會照著清單出文對吧!嘿嘿~
這篇主要是介紹 JS 常用的方法,是說方法指的就是 .filter()
這種東西吧? 有時看別的文章寫作函式、函數...
不過根據方法定義這篇來看應該就是叫做方法
需要先建立 JS 的 Date 物件來指向某個時間點。
var date = new Date();
console.log(date);
建立完後就能使用該變數來取得屬性。
console.log(date.getDay()); // 來取得星期。
console.log(date.getDate()); // 來取得日期。
console.log(date.getMonth()); // 來取得月份,月份是從0開始,所以+1的話才會得到正確的月份。
console.log(date.getFullYear()); // 來取得年份。
取出的值都是數值,所以可以新增 switch 判斷來改成需要呈現的方式。
一樣先建立日期,再取得星期。
var date = new Date();
var day = date.getDay();
function changeChinese(day) {
switch (day) {
case 1:
day = "一";
break;
case 2:
day = "二";
break;
case 3:
day = "三";
break;
case 4:
day = "四";
break;
case 5:
day = "五";
break;
case 6:
day = "六";
break;
case 0:
day = "日";
break;
}
return day;
}
一樣我們會需要 Date 物件
var date = new Date();
有個有趣的方式,他可以查閱自1970/1/1號到現在的毫秒數,至於為甚麼式從這個日期開始呢? 嘻嘻,就留給感興趣的人去查吧~~
console.log(date.getTime()); // 注意喔,顯示的是毫秒數
不過顯示毫秒數基本上沒什麼意義啦...所以以下我們就拿他做個簡單的倒數器吧~
可以在 Date 裡面指定日期參數
var comingDate = new Date('Jan 01, 2021 00:00:00');
將指定日期與目前時間相減就是到達指定日期所剩的秒數
var des = comingDate - date.getTime();
再來就可以把毫秒數轉成秒數、分鐘、小時、天數並呈現到你的網頁上。Math.floor
可以進行無條件捨去法
var days = Math.floor(des / (1000 * 60 * 60 * 24));
// % 運算子會去取得相除所剩下的餘數,由於執行順序與除號一樣,所以會由左至右執行
// 下面將是將一天所剩的毫秒數在繼續做處理
var hours = Math.floor(des % (1000 * 60 * 60 * 24) / (1000 * 60 * 60));
var mins = Math.floor(des % (1000 * 60 * 60) / (1000 * 60));
var secs = Math.floor(des % (1000 * 60) / 1000);
倒數器需要不斷執行,因此將上述程式碼放在 setInterval
裡面
var viewTime = setInterval(function(){
// 程式碼
}, 1000)
參考資料: MDN web docs - Date
這個應該還在超入門的範圍內吧XD,倒數器是個有趣的東西,製作了首個倒數器到現在他已經陪伴我2年的生日倒數了QQ
明天應該會介紹一下正規表達式
疑(? 清單上沒有這條阿... 當初的清單是先塞滿30天,到時想到什麼在寫什麼的心情去編排的。
編排上本來就沒有邏輯可言,所以接下來也有可能會變成作者想要寫啥就寫啥, 喔喔喔喔喔!盡請期待喔喔~~
只有取當下 timestamp 使用 Date.now()
效果和 (new Date()).getTime()
一樣,提供另一種方式做參考
感謝補充~~