ramda 介绍
目前已经存在许多优秀的 函数 式的库。通常它们作为通用工具包,可以用于多种编程范式。Ramda 的目标更为专注:专门为 函数 式编程风格而设计,更容易创建 函数 式 pipeline、且从不改变 用户 已有数据。?
Ramda 主要特性如下:
Ramda 强调更加纯粹的 函数 式风格。数据不变性和 函数 无副作用是其核心设计理念。这可以帮助你使用简洁、优雅的 代码 来完成工作。
Ramda 函数 本身都是 自动 柯里化的。这可以让你在只提供部分参数的情况下,轻松地在已有 函数 的基础上创建新 函数 。
Ramda 函数 参数的排列顺序更便于柯里化。要操作的数据通常在最后面。
理念
使用 Ramda 时,应该感觉像使用原生 JavaScript 一样,它是实用且 函数 式的 JavaScript。Ramda 没有在字符串中引入 lambda 表达式,也没有借用 consed 列表,更不是要移植所有的 Clojure 函数 。
Ramda 基本的数据结构都是原生 JavaScript 对象,我们常用的集合是 JavaScript 的数组。Ramda 还保留了许多其他原生 JavaScript 特性,例如, 函数 是具有 属性 的对象。
函数 式编程优势主要体现在数据不变性和 函数 无副作用两方面。虽然 Ramda 没有对此特别加强,但它 在这 两方面 支持 的非常好。
我们尽量让实现(编程和 API 实现)简洁、优雅。但 API 为王。为此我们牺牲了大量优雅、简洁的实现。
最后,Ramda 非常注重运行 性能 。可靠和 快速 的实现胜过过于强调 函数 式的纯度。
安装
使用 node:
$ npm install ramda
然后在 console 中使用:
const R = require('ramda');
直接在浏览器中使用:
<script src="path/to/your cop yOf/ramda.js"></script>
或使用最小化版本:
<script src="path/to/your cop yOf/ramda.min.js"></script>
或从 CDN 上 获取 :
<script src="//cd njs .cloudflare.com/ajax/libs/ramda/0.26.0/ramda.min.js"></script>
?
网站地址 : https://ramdajs.com
GitHub: https://github.com/ramda/ramda
网站描述: 一个 为 JavaScript 开发者准备的实用的 函数 式编程
ramda官方网站
官方网站: https://ramdajs.com
如果觉得 网站内容还不错,欢迎将 网站 推荐给程序员好友。