JavaScript 中的一等公民 函数
函数式编程
设计模式
面向对象
面向对象和函数式编程的关系
面向对象编程的缺点
1.复杂的this指向
2.点访问耗费性能
函数式编程
概念:函数是第一类对象,不依赖其他任何对象独立存在
优点 易读,容易维护
纯函数
相同的输入得到相同的输出,不依赖且不影响外任何外部环境.没有任何副作用。
function memoryFn(fn) {
var cache = {};
return function () {
var args = JSON.stringify(arguments);
cache[args] = cache[args]?cache[args]:fn(arguments);
return cache[args];
}
}