函數語言程式設計FP 初探
阿新 • • 發佈:2020-11-24
定義幾個常用的方法
const utils = { //定義變數是否存在 js有兩個表示不存在的值 undefined|null true表示存在 false表示不存在(undefined|null) existy(val) { return val != null //undefined 也是可以的 }, //判斷一個變數是否等同於true=> (undefined|null|false)判定false 其餘都是true.包括0|'' truthy(val) { return val !== false && utils.existy(val) },//滿足條件為真執行操作,否則返回 doWhen(conditon, callback) { if (utils.truthy(conditon)) return callback() return undefined } } module.exports = utils
const { existy, truthy } = require('./utils') console.log([null, undefined, false, 0, ''].map(item => existy(item))) // [ false, false, true, true, true ]console.log([null, undefined, false, 0, ''].map(existy)) // [ false, false, true, true, true ] 是上面的簡寫方式。效果一摸一樣 console.log([null, undefined, false, 0, ''].map(truthy)); //[ false, false, false, true, true ]