Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 精品久久久久中文字幕日本,九九99国产精品视频,体验区试看120秒啪啪免费

          整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          JavaScript中Date對象的那些事兒

          擊右上方紅色按鈕關注“web秀”,讓你真正秀起來

          前言

          任何事情都離不開時間,太陽每天升起的時間,每天你上班的時間,中午吃飯時間等等。在編程生涯中,無時無刻都有一個時間來引導,如數據創建時間(createTime),更新時間(updateTime)等。今天來說說JavaScript的Date對象。


          開始

          var date = new Date();
          

          這時的時間是當前時間。

          那么Date都可以用什么來作為參數呢?

          1、Date對象可以使用指定時間到1970年1月1日00:00:00 UTC的毫秒數做參數。


          JavaScript中Date對象的那些事兒


          看到上面的結果是不是有點奇怪,當參數為0時返回的不應該是1970年1月1日00:00:00嗎?這里應該是使用了格林尼治標準時間作為計時標準,中國的時間比格林威治標準時間快8個小時,所以就是8點,而不是0點啦。(突然想到周董的一段歌詞,“我占據格林威治守候著你,在時間標準起點回憶過去,你卻在永夜了的極地旅行”,格林威治是世界計算時間和地理經度的起點,但是現在GMT時間已經不再被科學界確定,還有一個最接近GMT的世界時間標準,就是UTC啦)

          2、參數也可以是(年,月,日,時,分,秒),其中至少需要兩個整數,否則就會被當做1中例子里的毫秒數了。

          這里的月份是0~11,所以下面的例子月份為5時 June六月


          JavaScript中Date對象的那些事兒


          當然,這里的參數也可以是負數,就表示相對當前設定時間扣掉的時間。比如下圖第一個例子,月份使用了負數,于是就從2018年1月1日為基準,扣掉五個月,變為了2018年8月


          JavaScript中Date對象的那些事兒


          3、我們再看看0,1,-1這三個特殊數字做參數的情況。如果年份使用0,則表示的是1900年,為負數就變成了公元前。


          JavaScript中Date對象的那些事兒


          4、當然,除了整數,還可以用日期的字符串作為參數


          JavaScript中Date對象的那些事兒


          任意搭配都可以得到正確的時間,棒棒噠!

          Date對象中有很多方法,這里我只挑一些常用的來說下。

          1、Date() 返回當前的時間


          JavaScript中Date對象的那些事兒


          無論你在中間加什么參數,永遠返回當前時間

          2、getDate() 返回指定時間的某一天(1~31)

          getDay() 返回指定時間的星期數(0~6)

          getMonth() 返回指定時間的月份(0~11)

          getFullYear() 返回指定時間的四位數年份

          getHours() 返回指定時間的小時(0~23)

          getMinutes() 返回指定時間的分鐘數(0~59)

          getSeconds() 返回指定時間的秒數(0~59)

          getMilliseconds() 返回指定時間的毫秒數(0~999)


          JavaScript中Date對象的那些事兒


          3、getTime() 返回1970年1月1日00:00:00到指定時間的毫秒數,就是UNIX時間數的1000倍


          JavaScript中Date對象的那些事兒


          也就是說,UNIX時間和時間字符串相互轉換可以這樣


          JavaScript中Date對象的那些事兒


          除了getTime(),將時間字符串轉換成毫秒數的方法還有+Date()、Number(Date)和Date.parse()

          Date()和new Date()

          上面的例子里有用到Date()和new Date(),返回結果的狀態也是不同的,在這里總結一下。,Date()無論有沒有參數都是返回的當前時間的字符串,而new Date()會根據參數返回對應時間的字符串


          分分鐘寫個小日歷

          使用Date()對象的一個簡單的應用當然就是寫日歷了~

          首先,我們需要判斷當前月份的第一天是星期幾

          var date = new Date();
          var year = date.getFullYear();
          var month = date.getMonth();
          var firstDay,
           getFirstDay;
          function getFirstDay (year, month) {
           firstDay = new Date(year, month, 1);
           getFirstDay = firstDay.getDay();
          }
          

          然后再判斷當前月份的天數。選用的辦法是使用當前月份下個月的1日的時間減去1個小時,這樣就回到了當前月份最后一天,再獲取當前日期即可。

          function getMonthDays (year, month) {
           var nextMonth = new Date(year, month + 1, 1),
           getMonthDays;
           nextMonth.setHours(nextMonth.getHours() - 1);
           getMonthDays = nextMonth.getDate();
          }
          


          剩下的就是將數據填充到表格里就可以啦~

          但是日歷并不只能看當前月份,還可以查前一個月后一個月,那么只需要加兩個按鈕,點擊后月份減1或加1即可。

          具體代碼在下面~

          https://github.com/yanagao/Date.git

          1970年的元旦

          眾所周知,所有的編程語言都是要從1970年1月1日開始計算時間,這個時間是有什么特殊的含義嗎?在1970年的元旦0點0分0秒到底發生了什么?

          上面我們提到了一個UNIX時間,就是指從1970年1月1日0時0分0秒起至現在的總秒數。我們都知道,系統有32位也有64位,那么如果把UNIX時間用32位二進制數表示,只能夠表示到2147483647秒,也就是到Tue Jan 19 2038 11:14:07 這個時間就是極限了,超過這個時間,就會變成負數,系統就掛了。在以前那個只有32位操作系統的年代,可能覺得38年之前就會有解決辦法吧(⊙﹏⊙)b。年初的時候流傳了iPhone變磚的方法,如果你把iPhone的系統時間調到1970年1月1日,重啟手機就變磚了,不舍得用自己手機試驗的同學紛紛去了蘋果體驗店。有網友就猜測,因為中國在東8區,比格林威治時間快8個小時,也就是說北京時間1970年1月1日00:00:00對應的是1969年12月31日16:00:00,UNIX時間為負,所以手機變磚,但是沒法證實這個猜測的正確性┑( ̄Д  ̄)┍。

          現在的操作系統大部分都為64位,可以表示至少到263,經過各種不嚴密計算,可以算出64位二進制至少可以表示2924.7億年,應該就不用擔心系統掛掉的問題了┑( ̄Д  ̄)┍。

          公告

          喜歡小編的點擊關注,了解更多知識!


          構建的應用程序的時候都會帶有日期時間組件,無論是資源的創建日期還是活動的時間戳。在本文中,我將分享如何在JavaScript中以各種格式獲取當前日期。

          1、JavaScript的Date對象

          const date = new Date();

          該Date對象包含一個Number,表示從新紀元(即1970年1月1日)起經過的毫秒數。你可以將日期字符串傳遞給Date構造函數以創建指定日期的對象:

          const date = new Date('Jul 12 2011');

          要獲取當前年份,可以使用對象的getFullYear()方法。getFullYear()方法在Date構造函數中返回指定日期的年份:

          const currentYear = date.getFullYear();
          console.log(currentYear); //2020

          同樣,有一些方法可以獲取當月的當前日期和當前的月份:

          const today = date.getDate();
          const currentMonth = date.getMonth() + 1;

          該getDate()方法返回每月的當前日期(1-31)。使用getMonth()方法返回指定日期的月份,需要注意的一點是,該方法返回0索引值(0-11),其中0表示一月,11表示十二月。因此,加1可以使月份的值標準化。

          2、Date now

          now()是Date對象的靜態方法。它以毫秒為單位的值返回,該值表示從紀元以來所經過的時間。你可以將now()方法返回的毫秒數傳遞給Date構造函數以實例化新Date對象:

          const timeElapsed = Date.now();
          const today = new Date(timeElapsed);

          3、格式化日期

          你可以使用Date對象的方法將日期格式化為多種格式(GMT,ISO等)。該toDateString()方法以我們可讀的格式返回日期:

          today.toDateString(); // "Sun Jun 16 2020"

          toISOString()返回遵循ISO 8601擴展格式的日期:

          today.toISOString(); // "2020-06-16T08:30:00.000Z"

          toUTCString()以UTC時區格式返回日期:

          today.toUTCString(); // "Sat, 16 Jun 2020 08:30:00 GMT"

          toLocaleDateString()以地區區時的格式返回日期:

          today.toLocaleDateString(); // "6/16/2020"

          4、自定義日期格式器功能

          除了上面提到的格式外,你的應用程序可能具有不同的數據格式。它可以是yy/dd/mm或yyyy-dd-mm格式,或者類似的格式。為了解決這個問題,最好創建一個可重用的函數,以便可以在多個項目中使用它。因此,接下來,讓我們創建一個實用程序函數,該函數將以函數參數中指定的格式返回日期:

          const today = new Date();
          function formatDate(date, format) {
              //
          }
          formatDate(today, 'mm/dd/yy');

          你需要使用參數中傳遞格式字符串中的月份,日期和年份分別替換字符串“ mm”,“ dd”,“ yy”。然后,使用replace(),如下所示的方法:

          format.replace('mm', date.getMonth() + 1);

          但是,這將導致很多methods連接在一起,并且會讓我們嘗試把函數變得更靈活更適合我們的項目時產生麻煩:

            .replace('yy', date.getFullYear())
            .replace('dd', date.getDate());

          然后可以使用正則表達式代替methods來連接methods replace()。首先創建一個對象,該對象將代表子字符串的鍵值對及其各自的值:

          const formatMap = {
              mm: date.getMonth() + 1,
              dd: date.getDate(),
              yy: date.getFullYear().toString().slice(-2),
              yyyy: date.getFullYear()
          };

          接下來,使用正則表達式匹配并替換字符串:

          formattedDate = format.replace(/mm|dd|yy|yyy/gi, matched => map[matched]);

          完整的功能及代碼如下所示:

          function formatDate(date, format) {
              const map = {
                  mm: date.getMonth() + 1,
                  dd: date.getDate(),
                  yy: date.getFullYear().toString().slice(-2),
                  yyyy: date.getFullYear()
              }
           
              return format.replace(/mm|dd|yy|yyy/gi, matched => map[matched])
          }

          你還可以在函數中添加格式化時間戳的功能。

          5、最后

          你現在對DateJavaScript 中的對象有更好的了解。你也可以使用其他第三方庫(例如datesj和)moment來處理應用程序中的日期。

          ate 對象

          Date 對象用于處理日期與實際。

          創建 Date 對象: new Date().

          以上四種方法同樣可以創建 Date 對象:

          var d = new Date();

          var d = new Date(milliseconds);

          var d = new Date(dateString);

          var d = new Date(year, month, day, hours, minutes, seconds, milliseconds);


          Date 對象屬性

          屬性描述
          constructor返回對創建此對象的 Date 函數的引用。
          prototype使您有能力向對象添加屬性和方法。

          Date 對象方法

          方法描述
          getDate()從 Date 對象返回一個月中的某一天 (1 ~ 31)。
          getDay()從 Date 對象返回一周中的某一天 (0 ~ 6)。
          getFullYear()從 Date 對象以四位數字返回年份。
          getHours()返回 Date 對象的小時 (0 ~ 23)。
          getMilliseconds()返回 Date 對象的毫秒(0 ~ 999)。
          getMinutes()返回 Date 對象的分鐘 (0 ~ 59)。
          getMonth()從 Date 對象返回月份 (0 ~ 11)。
          getSeconds()返回 Date 對象的秒數 (0 ~ 59)。
          getTime()返回 1970 年 1 月 1 日至今的毫秒數。
          getTimezoneOffset()返回本地時間與格林威治標準時間 (GMT) 的分鐘差。
          getUTCDate()根據世界時從 Date 對象返回月中的一天 (1 ~ 31)。
          getUTCDay()根據世界時從 Date 對象返回周中的一天 (0 ~ 6)。
          getUTCFullYear()根據世界時從 Date 對象返回四位數的年份。
          getUTCHours()根據世界時返回 Date 對象的小時 (0 ~ 23)。
          getUTCMilliseconds()根據世界時返回 Date 對象的毫秒(0 ~ 999)。
          getUTCMinutes()根據世界時返回 Date 對象的分鐘 (0 ~ 59)。
          getUTCMonth()根據世界時從 Date 對象返回月份 (0 ~ 11)。
          getUTCSeconds()根據世界時返回 Date 對象的秒鐘 (0 ~ 59)。
          getYear()已廢棄。 請使用 getFullYear() 方法代替。
          parse()返回1970年1月1日午夜到指定日期(字符串)的毫秒數。
          setDate()設置 Date 對象中月的某一天 (1 ~ 31)。
          setFullYear()設置 Date 對象中的年份(四位數字)。
          setHours()設置 Date 對象中的小時 (0 ~ 23)。
          setMilliseconds()設置 Date 對象中的毫秒 (0 ~ 999)。
          setMinutes()設置 Date 對象中的分鐘 (0 ~ 59)。
          setMonth()設置 Date 對象中月份 (0 ~ 11)。
          setSeconds()設置 Date 對象中的秒鐘 (0 ~ 59)。
          setTime()setTime() 方法以毫秒設置 Date 對象。
          setUTCDate()根據世界時設置 Date 對象中月份的一天 (1 ~ 31)。
          setUTCFullYear()根據世界時設置 Date 對象中的年份(四位數字)。
          setUTCHours()根據世界時設置 Date 對象中的小時 (0 ~ 23)。
          setUTCMilliseconds()根據世界時設置 Date 對象中的毫秒 (0 ~ 999)。
          setUTCMinutes()根據世界時設置 Date 對象中的分鐘 (0 ~ 59)。
          setUTCMonth()根據世界時設置 Date 對象中的月份 (0 ~ 11)。
          setUTCSeconds()setUTCSeconds() 方法用于根據世界時 (UTC) 設置指定時間的秒字段。
          setYear()已廢棄。請使用 setFullYear() 方法代替。
          toDateString()把 Date 對象的日期部分轉換為字符串。
          toGMTString()已廢棄。請使用 toUTCString() 方法代替。
          toISOString()使用 ISO 標準返回字符串的日期格式。
          toJSON()以 JSON 數據格式返回日期字符串。
          toLocaleDateString()根據本地時間格式,把 Date 對象的日期部分轉換為字符串。
          toLocaleTimeString()根據本地時間格式,把 Date 對象的時間部分轉換為字符串。
          toLocaleString()據本地時間格式,把 Date 對象轉換為字符串。
          toString()把 Date 對象轉換為字符串。
          toTimeString()把 Date 對象的時間部分轉換為字符串。
          toUTCString()根據世界時,把 Date 對象轉換為字符串。
          UTC()根據世界時返回 1970 年 1 月 1 日 到指定日期的毫秒數。
          valueOf()返回 Date 對象的原始值。

          主站蜘蛛池模板: 久久久精品人妻一区二区三区| 色国产在线视频一区| 国产99视频精品一区| 天堂Av无码Av一区二区三区| 久久免费视频一区| 国产精品资源一区二区| 亚洲AV日韩综合一区| 任你躁国产自任一区二区三区 | 无码人妻久久久一区二区三区| 日韩在线视频一区二区三区| 国产大秀视频在线一区二区 | 精品国产一区AV天美传媒| 日韩人妻无码一区二区三区久久99| 成人免费视频一区二区三区| 亚洲一区中文字幕| 在线播放国产一区二区三区 | 久久久老熟女一区二区三区| 日韩电影一区二区三区| 夜夜添无码试看一区二区三区| 久久国产午夜精品一区二区三区| 日本中文一区二区三区亚洲| 国产一区二区三区四| 一区二区三区伦理高清| A国产一区二区免费入口| 久久精品国产一区二区三区不卡| 一区二区高清在线| 精品国产一区二区三区久久蜜臀| 亚洲片一区二区三区| 成人区人妻精品一区二区不卡网站| 91麻豆精品国产自产在线观看一区 | 中文字幕精品一区影音先锋| 麻豆AV一区二区三区久久| 无码国产精品一区二区免费vr | 日韩精品一区二区三区中文| 精品永久久福利一区二区| 精品福利一区二区三区免费视频| 亚洲av乱码中文一区二区三区| 无码一区二区三区中文字幕| 日韩一区二区三区免费播放| 99精品国产一区二区三区| 91精品国产一区|