usually.js 是一個面向現代 Web 開發的 JavaScript 函數庫,基於 ES6 開發。最新版本2.4.1,最新版本usually.js增加管道函數—— pipe 函數。什麼是管道函數?管道函數,其作用是將前一步的結果直接傳參給下一步的函數,從而省略了中間的賦值步驟,可以大量減少記憶體... ...
體驗usually.js的管道函數——pipe函數
usually.js 是一個面向現代 Web 開發的 JavaScript 函數庫,基於 ES6 開發。最新版本2.4.1,最新版本usually.js增加管道函數—— pipe 函數。什麼是管道函數?管道函數,其作用是將前一步的結果直接傳參給下一步的函數,從而省略了中間的賦值步驟,可以大量減少記憶體中的對象,節省記憶體。
基本使用
usually.js 管道函數 pipe 的管道操作符 |> 允許以一種易讀的方式去對函數鏈式調用。本質上來說,管道操作符是單參數函數調用的語法糖,它允許你像這樣執行一個調用:
var a = -1.15454 var result = U.pipe(a, 'Math.abs |> Math.round')
使用正常js語法寫的話,等效的代碼是這樣的:
var a = -1.15454 var result = Math.round(Math.abs(a))
使用$占位符
usually.js 的管道函數 pipe 還可以使用 $ 占位符,將前一個函數的運算結果傳參給下一個的函數,如:U.pipe(x, 'a |> b($, y)') 等價於 b(a(x), y)。
使用 $ 占位符示例:
var x = 1 var y = 3 var z = 2 var foo = n => n + 1; var bar = (x, y) => x * y; var baz = (x, y, z) => x * y + z var result = U.pipe(x, 'foo |> bar($, y) |> baz($ , y, z)') // => result = 20
2.4.1版本 usually.js 更新內容如下:
(1)、bug 修複,修複 stringifyURL 函數重覆追加“?”的bug
(2)、新增管道操作函數 —— pipe 函數,簡化多函數運算流
(3)、新增對象值覆蓋函數 —— overValues 函數
(4)、新增顏色值處理函數 —— extendHex 函數,將3位的16進位色值轉換為6位
(5)、新增 randomHex 函數 —— 生成16進位隨機顏色色值
(6)、新增 parseCookie 函數,將 cookie 字元串解析為對象形式
附錄
usually.js官方文檔地址:https://jofunliang.github.io/usuallyjs/
usually.js的GitHub地址:https://github.com/JofunLiang/usuallyjs