Prelude.ls:JavaScript函数式编程库

本文深入探讨了基于LiveScript的JavaScript函数式编程库Prelude.ls,介绍了其核心特性,如柯里化函数,以及如何实现对象映射操作。详细展示了通过实例应用这些概念的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Prelude.ls是一个JavaScript函数式编程库,这是一个基础库,在一定程度上基于Haskell(一种纯函数式编程语言)的Prelude模块。 

Prelude.ls基于LiveScript编写,LiveScript是JavaScript语言的前身,由网景(Netscape)在设计浏览器的时候,为了提高网页设计的互动性而开发。随后Netscape与Sun公司进行合作,共同发展LiveScript语言,并将LiveScript语言改名为JavaScript。 


与其他的库(如underscore.js)不同,在prelude.ls中,所有函数被“柯里化(Currying)” ,是指把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数且返回结果的新函数。 

Javascript代码 
  1. var takeFour = take(4);  
  2. takeFour('hello there'); //=> 'hell'  

对象映射到对象,字符串映射到字符串: 

Javascript代码 
  1. map(function(x){ return x*2; }, {d: 3, e: 4}); //=> {d: 6, e: 8}  

在某些情况下,可以使用对象来作为函数: 

Javascript代码 
  1. map({on: 1, off: 0}, ['on''on''off''on''off']); //=> [1, 1, 0, 1, 0]  

项目主页: http://gkz.github.com/prelude-ls/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值