上一页 1 2 3 4 5 6 7 ··· 9 下一页
摘要: 柯里化 当一个函数有多个参数的时候先传递一部分参数调用它(这部分参数以后永远不变) 然后返回一个新的函数接收剩余的参数,返回结果 手写Lodash中的curry函数 function curry(fn) { return function curriedFn(...args) { if (args. 阅读全文
posted @ 2022-04-10 23:39 coffeemil 阅读(59) 评论(0) 推荐(0)
摘要: Lodash纯函数的功能库 英文官网:https://lodash.com/ 中文网:https://www.lodashjs.com/ lodash 是一个纯函数的功能库,提供了对数组、数字、对象、字符串、函数等操作的一些方法 阅读全文
posted @ 2022-04-07 01:00 coffeemil 阅读(62) 评论(0) 推荐(0)
摘要: 手写Lodash中的memoize记忆函数 // 求圆的面积 function getArea(r) { console.log('执行了getArea'); return Math.PI * r * r } // 记忆函数 function memoize(fn) { let cache = {} 阅读全文
posted @ 2022-04-07 00:53 coffeemil 阅读(74) 评论(0) 推荐(0)
摘要: 纯函数 存函数定义:相同的输入永远会得到相同的输出,而没有任何可观察的副作用函数 存函数好处 可缓存,例如lodash中的memoize记忆函数。 可测试,纯函数让测试更方便。 并行处理:在多线程环境下并行操作共享的内存数据很可能会出现意外情况 纯函数不需要访问共享的内存数据,所以在并行环境下可以任 阅读全文
posted @ 2022-04-07 00:19 coffeemil 阅读(60) 评论(0) 推荐(0)
摘要: 闭包 闭包 (Closure):可以在另一个作用域中调用一个函数的内部函数并访问到该函数的作用域中的成员 闭包的本质:函数在执行的时候会放到一个执行栈上当函数执行完毕后会从执行栈上移除,但是堆上的作用域成员因为被外部引用不能释放,因此内部函数依然可以访问到外部函数的成员 案例:求平方 functio 阅读全文
posted @ 2022-04-06 01:28 coffeemil 阅读(37) 评论(0) 推荐(0)
摘要: 高阶函数 可以把函数作为参数传递给另一个函数 可以把函数作为另一个函数的返回结果 forEach function forEach(list, fn) { for (let i = 0; i < list.length; i++) { fn(list[i]) }}let arr = [1, 2, 3 阅读全文
posted @ 2022-04-06 00:41 coffeemil 阅读(74) 评论(0) 推荐(0)
摘要: forEach 、for of 1、数组的元素是基本数据类型:(X) [1] 2、数组的元素是引用数据类型:(直接修改引用,X) [{}] 3、数组的元素是引用数据类型:(修改引用对象内属性,√) [{a:1}] 阅读全文
posted @ 2022-03-29 10:57 coffeemil 阅读(48) 评论(0) 推荐(0)
摘要: npm npm install -g npm npm仍然提供了一个非常有用的解决方案,支持大量的测试用例。大多数开发人员使用原始npm客户端仍然可以做得很好 cnpm npm install -g cnpm --registry=https://registry.npm.taobao.org cnp 阅读全文
posted @ 2022-03-20 19:29 coffeemil 阅读(78) 评论(0) 推荐(0)
摘要: 安装 js-pinyin 安装 underscore.js // 分组排序 groupBySort(list) { const groupObj = _.groupBy(list, function(item) { return String(pinyin.getFullChars(item.cou 阅读全文
posted @ 2022-02-16 12:17 coffeemil 阅读(107) 评论(0) 推荐(0)
摘要: 字符转ASCII码:用str.charCodeAt(); ASCII码转字符:用String.fromCharCode(65); 阅读全文
posted @ 2022-02-14 10:27 coffeemil 阅读(903) 评论(0) 推荐(1)
上一页 1 2 3 4 5 6 7 ··· 9 下一页