若要在 String 之前根據指定長度補 0
,Wink-fp 提供了 padStart()
。
Version
Wink-fp 1.25.5
ECMAScript
let data = '8'
data.padStart(2, '0') // ?
希望結果是兩位數,若原資料只有一位就在前面補 0
,若是兩位就直接回傳,ECMAScript 提供了 padStart()
可直接使用,此為 Method Chaining 風格。
Ramda
import { invoker } from 'ramda'
let padStart = invoker(2, 'padStart')
let data = '8'
padStart(2, '0', data) // ?
Ramda 沒有提供 padStart()
,但可藉由 invoker()
從 String.prototype.padStart()
抽出 padStart()
free function,並將 data 放到最後一個 argument,符合 Function Pipeline 風格。
Wink-fp
import { padStart } from 'wink-fp'
let data = '8'
padStart(2, '0', data) // '08'
Wink-fp 直接提供 padStart()
可直接使用。
padStart()
Number -> String -> String -> String
根據指定長度補足其他 String
Number
:最後 String 長度
String
:要補足的 String
String
:Data 為 String
String
:回傳新 String
Conclusion
- Wink-fp 的
padStart()
與 ECMAScript 內建的padStart()
功能完全相同,只是 ECMAScript 為 Method Chaing 風格,Wink-fp 為 Function Pipeline 風格