成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專(zhuān)欄INFORMATION COLUMN

JS使用技巧2——momentjs太重了嗎?試試dayjs和miment吧

KaltZK / 2310人閱讀

摘要:方便靈巧,功能強(qiáng)大。唯一的缺點(diǎn)是,對(duì)于前端來(lái)講,它的包太太太太太大了。我是的重度用戶(hù),但它的大小時(shí)刻都在折磨人。所以,開(kāi)源社區(qū)有了一些精簡(jiǎn)的方案。的使用方法,也和基本一致。其實(shí)對(duì)于絕大部分的時(shí)間操作場(chǎng)景,和更符合使用要求。

關(guān)于時(shí)間的操作,一直在使用momentjs這個(gè)庫(kù)。方便靈巧,功能強(qiáng)大。唯一的缺點(diǎn)是,對(duì)于前端HTML來(lái)講,它的包太太太太太大了。

我是momentjs的重度用戶(hù),但它的大小時(shí)刻都在折磨人。雖然方便高效,可這動(dòng)輒200K的大小,對(duì)于首頁(yè)加載速度來(lái)講簡(jiǎn)直就是一場(chǎng)災(zāi)難。所以,開(kāi)源社區(qū)有了一些精簡(jiǎn)的方案。如dayjs和miment。

dayjs

dayjs本身就是對(duì)標(biāo)momentjs進(jìn)行開(kāi)發(fā)的,看作者的官方介紹:

Day.js is a minimalist JavaScript library that parses, validates, manipulates, and displays dates and times for modern browsers with a largely Moment.js-compatible API. If you use Moment.js, you already know how to use Day.js.

它的用法非常簡(jiǎn)單。

dayjs().startOf("month").add(1, "day").set("year", 2018).format("YYYY-MM-DD HH:mm:ss");

是不是很momentjs很相似?不,其實(shí)它們就是一模一樣的。dayjs的API和moment幾乎一模一樣,所以如果想要替換到現(xiàn)有的momentjs代碼,直接替換為dayjs即可,調(diào)用語(yǔ)句絕大部分情況下可以一字不改。

dayjs的大小有多少呢?2KB。再想想momentjs的大小。

miment

miment同樣也是一個(gè)極簡(jiǎn)的時(shí)間處理庫(kù),壓縮后的代碼甚至達(dá)到了1KB左右,比dayjs還小。

與包大小相應(yīng)的,作者團(tuán)隊(duì)只保留了momentjs中核心方法,但其實(shí)這些方法在普通場(chǎng)景下已經(jīng)足夠。

miment的使用方法,也和momentjs基本一致。例如:

miment().add(1, "YYYY").add(2, "MM").add(-3, "DD") // 增加 1 年 2 個(gè)月又減回 3 天

miment().isBetween("2000-01-01","2020-01-01") // true

miment().isBefore("2000-01-01") // false

miment().format("YYYY年MM月DD日 星期ww") // 2018年04月09日 星期1 *周日對(duì)應(yīng)星期0*

想要取得多帶帶的年月日,更簡(jiǎn)單

miment().format("YYYY") // 2018
miment().format("MM") // 04
miment().format("DD") // 09
miment().format("hh") // 23
miment().format("mm") // 57
miment().format("ss") // 16
miment().format("SSS") // 063
miment().format("ww") // 1
miment().format("WW") // 一
結(jié)語(yǔ)

對(duì)于momentjs,大部分開(kāi)發(fā)者都是又愛(ài)又恨,又或者大覺(jué)不愛(ài)。其實(shí)對(duì)于絕大部分的時(shí)間操作場(chǎng)景,dayjs和miment更符合使用要求。尤其對(duì)于非SSR的場(chǎng)合,想想那精簡(jiǎn)近200KB的首屏渲染速度,真的是非常有吸引力。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/108837.html

相關(guān)文章

  • moment太重? 那就試試miment--一個(gè)超輕量級(jí)的js時(shí)間庫(kù)

    介紹 Miment 是一個(gè)輕量級(jí)的時(shí)間庫(kù)(打包壓縮后只有1K),沒(méi)有太多的方法,Miment的設(shè)計(jì)理念就是讓你以幾乎為零的成本快速上手,無(wú)需一遍一遍的擼文檔 由來(lái) 首先 致敬一下Moment,非常好用的一個(gè)時(shí)間庫(kù),我本身也是Moment重度使用者,用習(xí)慣了Moment,一碰到需要處理時(shí)間的需求,立馬Moment,不過(guò)有時(shí)候想想,Moment給我們提供了那么多的功能,但是我們天天用的,也就那么一兩個(gè)...

    wwolf 評(píng)論0 收藏0
  • moment太重? 那就試試miment--一個(gè)超輕量級(jí)的js時(shí)間庫(kù)

    介紹 Miment 是一個(gè)輕量級(jí)的時(shí)間庫(kù)(打包壓縮后只有1K),沒(méi)有太多的方法,Miment的設(shè)計(jì)理念就是讓你以幾乎為零的成本快速上手,無(wú)需一遍一遍的擼文檔 由來(lái) 首先 致敬一下Moment,非常好用的一個(gè)時(shí)間庫(kù),我本身也是Moment重度使用者,用習(xí)慣了Moment,一碰到需要處理時(shí)間的需求,立馬Moment,不過(guò)有時(shí)候想想,Moment給我們提供了那么多的功能,但是我們天天用的,也就那么一兩個(gè)...

    summerpxy 評(píng)論0 收藏0
  • moment太重? 那就試試miment--一個(gè)超輕量級(jí)的js時(shí)間庫(kù)

    介紹 Miment 是一個(gè)輕量級(jí)的時(shí)間庫(kù)(打包壓縮后只有1K),沒(méi)有太多的方法,Miment的設(shè)計(jì)理念就是讓你以幾乎為零的成本快速上手,無(wú)需一遍一遍的擼文檔 由來(lái) 首先 致敬一下Moment,非常好用的一個(gè)時(shí)間庫(kù),我本身也是Moment重度使用者,用習(xí)慣了Moment,一碰到需要處理時(shí)間的需求,立馬Moment,不過(guò)有時(shí)候想想,Moment給我們提供了那么多的功能,但是我們天天用的,也就那么一兩個(gè)...

    ls0609 評(píng)論0 收藏0
  • ?Day.js 2kB超輕量時(shí)間庫(kù) Moment.js一樣的API

    showImg(https://segmentfault.com/img/bV9wV7?w=1952&h=712);Moment.js 是一個(gè)大而全的 JS 時(shí)間庫(kù),很大地方便了我們處理日期和時(shí)間。但是 Moment.js太重了(200k+ with locals),可能一般項(xiàng)目也只使用到了她幾個(gè)常用的API。雖然社區(qū)也有幾個(gè)輕量的時(shí)間庫(kù),要想遷移過(guò)去又會(huì)增加新的學(xué)習(xí)和遷移成本。 如果能有一個(gè)和 ...

    CoreDump 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<