各位靓仔靓女,早上好/下午好/晚上好!我是你们的老朋友,今天咱们聊点儿高级的—— Ramda.js 的 point-free 编程风格。 准备好了吗?咱们发车! 第一部分:什么是 Point-Free?别告诉我你不知道! Point-free,也叫 Tacit programming,中文翻译过来就是“无点编程”。 听起来玄乎,其实很简单。 核心思想: 函数定义不显式地指定参数。 换句话说,你写的函数里,看不到 x => x + 1 这种显式的参数定义,看到的都是函数组合。 举个栗子: 假设我们要写一个函数,把一个数字加 1,然后再乘以 2。 传统写法: const addOneThenMultiplyByTwo = (x) => { const addOne = x + 1; return addOne * 2; }; console.log(addOneThenMultiplyByTwo(3)); // 输出 8 这里,我们看到了 x 这个参数,这就是“点”。 Point-free 写法: import * as R from ‘ramda’; const addOne …
继续阅读“JavaScript内核与高级编程之:`JavaScript`的`Ramda.js`:其`point-free`编程风格。”