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 午夜视频在线,亚洲国产日韩女人aaaaaa毛片在线,伊人国产在线视频

          整合營銷服務(wù)商

          電腦端+手機(jī)端+微信端=數(shù)據(jù)同步管理

          免費(fèi)咨詢熱線:

          Chrono.js:Javascript 中的日期 NLP 庫

          家好,很高興又見面了,我是"高級前端?進(jìn)階?",由我?guī)е蠹乙黄痍P(guān)注前端前沿、深入前端底層技術(shù),大家一起進(jìn)步,也歡迎大家關(guān)注、點(diǎn)贊、收藏、轉(zhuǎn)發(fā),您的支持是我不斷創(chuàng)作的動力。

          什么是 Chrono (v2)

          Chrono 是 Javascript 中的自然語言日期解析器,它旨在處理大多數(shù)日期/時間格式并從任何給定文本中提取信息,內(nèi)容包括:

          • 今天、明天、昨天、上周五等
          • 2013 年 8 月 17 日 - 2013 年 8 月 19 日
          • 本周五 13:00 - 16:00
          • 5 天前
          • 2 周后
          • 2013 年 8 月 17 日星期六 18:40:39 GMT+0900 (JST)
          • 2014-11-30T08:15:30-05:30

          目前 Chrono 在 Github 上通過 MIT 協(xié)議開源,有超過 3.5k 的 star,值得嘗試。

          如何使用 Chrono (v2)

          基礎(chǔ)使用

          首先需要通過 NPM 安裝:

          npm install --save chrono-node

          然后直接在代碼中引入即可:

          import * as chrono from 'chrono-node';
          
          chrono.parseDate('An appointment on Sep 12-13');

          如果是 Node.js 環(huán)境,可以使用下面的代碼:

          const chrono = require('chrono-node');
          
          // or `import chrono from 'chrono-node'` for ECMAScript

          對于 Chrono 庫來說,只需將字符串傳遞給函數(shù) chrono.parseDate 或 chrono.parse 即可。

          import * as chrono from 'chrono-node';
          
          chrono.parseDate('An appointment on Sep 12-13');
          // Fri Sep 12 2014 12:00:00 GMT-0500 (CDT)
          
          chrono.parse('An appointment on Sep 12-13');
          /* [{ 
              index: 18,
              text: 'Sep 12-13',
              start: ...
          }] */

          解析參考(日期/時區(qū))

          今天的“星期五”與上個月的“星期五”不同,引用日期的含義取決于它們被提及的時間和地點(diǎn)。 Chrono 允許開發(fā)者將引用定義為 Date 或 ParsingReference 對象:

          // (Note: the exmaples run on JST timezone)
          chrono.parseDate('Friday', new Date(2012, 8 - 1, 23));
          // Fri Aug 24 2012 12:00:00 GMT+0900 (JST)
          
          chrono.parseDate('Friday', new Date(2012, 8 - 1, 1));
          // Fri Aug 03 2012 12:00:00 GMT+0900 (JST)
          
          chrono.parseDate('Friday at 4pm', {
            // Wed Jun 09 2021 21:00:00 GMT+0900 (JST)
            // = Wed Jun 09 2021 07:00:00 GMT-0500 (CDT)
            instant: new Date(1623240000000),
            timezone: 'CDT',
          });
          // Sat Jun 12 2021 06:00:00 GMT+0900 (JST)
          // = Fri Jun 11 2021 16:00:00 GMT-0500 (CDT)

          解析配置

          forwardDate(布爾值)假設(shè)結(jié)果應(yīng)該在參考日期之后發(fā)生。

          const referenceDate = new Date(2012, 7, 25);
          // Sat Aug 25 2012 00:00:00 GMT+0900 -- The reference date was Saturday
          
          chrono.parseDate('Friday', referenceDate);
          // Fri Aug 24 2012 12:00:00 GMT+0900 (JST) -- The day before was Friday
          
          chrono.parseDate('Friday', referenceDate, { forwardDate: true });
          // Fri Aug 31 2012 12:00:00 GMT+0900 (JST) -- The following Friday

          timezones 覆蓋或添加時區(qū)縮寫和偏移量之間的自定義映射。 當(dāng)希望 Chrono 將某些文本解析為給定的時區(qū)偏移量時,請使用此選項(xiàng)。 Chrono 支持明確的(正常)時區(qū)映射和模糊映射,其中夏令時期間和之外的偏移量不同。

          // Chrono doesn't understand XYZ, so no timezone is parsed
          chrono.parse('at 10:00 XYZ', new Date(2023, 3, 20))
          // "knownValues": {"hour": 10, "minute": 0}
          
          // Make Chrono parse XYZ as offset GMT-0300 (180 minutes)
          chrono.parse('at 10:00 XYZ', new Date(2023, 3, 20), { timezones: { XYZ: -180 } })
          // "knownValues": {"hour": 10, "minute": 0, "timezoneOffset": -180}
          
          // Make Chrono parse XYZ as offset GMT-0300 outside of DST, and GMT-0200 during DST. Assume DST is between 
          import { getLastDayOfMonthTransition } from "timezone";
          import { Weekday, Month } from "parsing";
          
          const parseXYZAsAmbiguousTz = {
            timezoneOffsetDuringDst: -120,
            timezoneOffsetNonDst: -180,
            dstStart: (year: number) => getLastWeekdayOfMonth(year, Month.FEBRUARY, Weekday.SUNDAY, 2),
            dstEnd: (year: number) => getLastWeekdayOfMonth(year, Month.SEPTEMBER, Weekday.SUNDAY, 3)
          };
          // Parsing a date which falls within DST
          chrono.parse('Jan 1st 2023 at 10:00 XYZ', new Date(2023, 3, 20), { timezones: { XYZ: parseXYZAsAmbiguousTz } })
          // "knownValues": {"month": 1, ..., "timezoneOffset": -180}
          
          // Parsing a non-DST date
          chrono.parse('Jun 1st 2023 at 10:00 XYZ', new Date(2023, 3, 20), { timezones: { XYZ: parseXYZAsAmbiguousTz } })
          // "knownValues": {"month": 6, ..., "timezoneOffset": -120}

          參考資料

          https://github.com/wanasit/chrono

          https://dexlock.com/blog/a-dive-into-nlp-date-parsers/

          在前端開發(fā)中,多多少少有項(xiàng)目需要 jQuery日期選擇/日歷的插件,以下就為大家整理出一些 jQuery日期/日歷,希望對大家有所幫助!還有更好用的,也不否在下方留言,分享大家。PS:(標(biāo)題博眼球的,知道大家都知道這些的。呵呵呵)

          1.jQuery日歷插件 jQuery Week Calendar (是一個 jQuery 的按周顯示的日歷插件,能夠在周日歷網(wǎng)格中顯示事件)

          Web開發(fā)中,經(jīng)常需要獲取當(dāng)前的日期和時間,以便于在頁面中顯示或進(jìn)行相應(yīng)的操作。JavaScript提供了一些內(nèi)置的方法,可以方便地獲取當(dāng)前的日期和時間。

          獲取當(dāng)前日期

          要獲取當(dāng)前的日期,我們可以使用Date對象的getDate()、getMonth()和getFullYear()方法。具體步驟如下:

          • 創(chuàng)建一個Date對象,沒有傳入任何參數(shù),即默認(rèn)為當(dāng)前時間。
          • 使用getDate()方法獲取當(dāng)前的日期。
          • 使用getMonth()方法獲取當(dāng)前的月份,注意月份是從0開始計(jì)數(shù)的,所以需要加1。
          • 使用getFullYear()方法獲取當(dāng)前的年份。

          下面是一個示例代碼:

          var now = new Date();
          var day = now.getDate();
          var month = now.getMonth() + 1;
          var year = now.getFullYear();
          console.log("當(dāng)前日期為:" + year + "-" + month + "-" + day);

          運(yùn)行上述代碼,控制臺將輸出當(dāng)前日期,例如:當(dāng)前日期為:2023-10-31。

          獲取當(dāng)前時間

          要獲取當(dāng)前的時間,我們可以使用Date對象的getHours()、getMinutes()和getSeconds()方法。具體步驟如下:

          • 創(chuàng)建一個Date對象,沒有傳入任何參數(shù),即默認(rèn)為當(dāng)前時間。
          • 使用getHours()方法獲取當(dāng)前的小時數(shù)。
          • 使用getMinutes()方法獲取當(dāng)前的分鐘數(shù)。
          • 使用getSeconds()方法獲取當(dāng)前的秒數(shù)。

          下面是一個示例代碼:

          var now = new Date();
          var hours = now.getHours();
          var minutes = now.getMinutes();
          var seconds = now.getSeconds();
          console.log("當(dāng)前時間為:" + hours + ":" + minutes + ":" + seconds);

          運(yùn)行上述代碼,控制臺將輸出當(dāng)前時間,例如:當(dāng)前時間為:13:24:21。

          獲取當(dāng)前日期和時間

          如果需要同時獲取當(dāng)前的日期和時間,可以將上述兩個步驟合并。具體步驟如下:

          創(chuàng)建一個Date對象,沒有傳入任何參數(shù),即默認(rèn)為當(dāng)前時間。

          下面是一個示例代碼:

          var now = new Date();
          var day = now.getDate();
          var month = now.getMonth() + 1;
          var year = now.getFullYear();
          var hours = now.getHours();
          var minutes = now.getMinutes();
          var seconds = now.getSeconds();
          console.log("當(dāng)前日期和時間為:" + year + "-" + month + "-" + day + " " + hours + ":" + minutes + ":" + seconds);

          運(yùn)行上述代碼,控制臺將輸出當(dāng)前日期和時間,例如:當(dāng)前日期和時間為:2023-10-31 13:25:13。

          總結(jié)

          通過JavaScript的Date對象,我們可以方便地獲取當(dāng)前的日期和時間。通過使用getDate()、getMonth()、getFullYear()、getHours()、getMinutes()和getSeconds()方法,可以輕松地獲取所需的日期和時間信息。


          主站蜘蛛池模板: 少妇无码一区二区二三区| 日本伊人精品一区二区三区| 久久久久人妻一区二区三区vr| 亚洲一区二区三区久久久久| 八戒久久精品一区二区三区 | 亚洲视频一区在线观看| 插我一区二区在线观看| 国产精品一区二区无线| 成人精品视频一区二区| 色噜噜狠狠一区二区三区| 久久精品视频一区| 国产人妖视频一区二区| 国产精品被窝福利一区| 精品一区二区三区视频| 国产高清一区二区三区视频| 糖心vlog精品一区二区三区| 2018高清国产一区二区三区| 亚洲福利一区二区三区| 精品乱码一区二区三区四区| 91久久精品国产免费一区| 久久国产精品无码一区二区三区| 波多野结衣免费一区视频| 国产综合无码一区二区三区| 中文字幕一区二区三区四区| 中文字幕一区二区三区有限公司| 国产一区二区三区高清在线观看| 真实国产乱子伦精品一区二区三区| 国产一区二区精品久久凹凸| 中文无码精品一区二区三区 | 男人的天堂亚洲一区二区三区| 国产精品亚洲专一区二区三区| 国产伦精品一区二区| 日本免费电影一区| 亚洲午夜日韩高清一区 | 无码中文字幕人妻在线一区二区三区| 精品一区二区三区四区在线播放| 国产高清在线精品一区| 精品日韩一区二区| 日韩精品电影一区亚洲| 亚洲一区二区三区自拍公司| 91一区二区视频|