摘要: JavaScript函数式编程(一) JavaScript函数式编程(二) 在第二篇文章里,我们介绍了 Maybe、Either、IO 等几种常见的 Functor,或许很多看完第二篇文章的人都会有疑惑: 『这些东西有什么卵用?』 事实上,如果只是为了学习编写函数式、副作用小的代码的话,看完第一篇文 阅读全文
posted @ 2019-05-15 15:37 我爱吃小丸子 阅读(353) 评论(0) 推荐(0) 编辑
摘要: 上一篇文章 JavaScript函数式编程(一) 里我们提到了纯函数的概念,所谓的纯函数就是,对于相同的输入,永远会得到相同的输出,而且没有任何可观察的副作用,也不依赖外部环境的状态(我偷懒复制过来的)。 但是实际的编程中,特别是前端的编程范畴里,“不依赖外部环境”这个条件是根本不可能的,我们总是不 阅读全文
posted @ 2019-05-15 14:54 我爱吃小丸子 阅读(574) 评论(0) 推荐(0) 编辑
摘要: 函数式继承: var object = function (obj) { if (typeof Object.create !== 'undefined') { return Object.create(obj); } else { var F = function () {}; F.prototy 阅读全文
posted @ 2019-05-15 14:51 我爱吃小丸子 阅读(303) 评论(0) 推荐(0) 编辑
摘要: 一、引言 函数式编程的历史已经很悠久了,但是最近几年却频繁的出现在大众的视野,很多不支持函数式编程的语言也在积极加入闭包,匿名函数等非常典型的函数式编程特性。大量的前端框架也标榜自己使用了函数式编程的特性,好像一旦跟函数式编程沾边,就很高大上一样,而且还有一些专门针对函数式编程的框架和库,比如:Rx 阅读全文
posted @ 2019-05-15 14:48 我爱吃小丸子 阅读(3949) 评论(0) 推荐(1) 编辑
摘要: js的toLowerCase 是如何实现的? 二、ASCII编码 查阅资料后我知道了,计算机所有的字符都基于ASCII编码,下面是ASCII 基础编码的映射表: 此时,我们不难发现,A-Z 和 a-z 的 ASCII 编码的十进制刚好相差32, 于是我们的实现思路就是将大写的转成十进制编码,再转换成 阅读全文
posted @ 2019-05-15 11:38 我爱吃小丸子 阅读(1270) 评论(0) 推荐(0) 编辑