Skip to main content

monad

monad

// monad.js
const Monad = x => ({
map: f => Monad(f(x)),
fold: f => f(x),
toString: () => `Monad(${x})`
})
const dollarToYuan = str =>
Monad(str)
.map(s => s.replace(/\$+/g, '¥'))
.fold(x => x)
// .toString()
// dollarToYuan('$5.00')