1. 程式人生 > 實用技巧 >函數語言程式設計FP 初探

函數語言程式設計FP 初探

定義幾個常用的方法

 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 ]