2、函数式编程——偏函数用法

偏函数用法。

偏函数用法是指创建一个调用另外一个部分——参数或变量已经预置的函数——的函数用法。
很拗口对吧?别急,继续往下看。

var toString = Object.prototype.toString;

var isString = function(obj){
   return = toString.call(obj) == "[object String]"
};
var isFunction = function(obj){
  return  toString.call(obj) == "[object Function]"
}

上面是经典的JavaScript类型判断,虽然只有两个函数的定义,不复杂。但是存在的问题就是需要重复的定义一些相似的函数(毕竟类型不止两种),如果有更多的isXXX()方法,就会出现更多的冗余的代码。

为了解决重复定义的问题,我们引入一个新函数,这个新函数可以入工厂一样批量创建一些类似的函数。

var isType = function(type){
   return function(obj){
      return  toString.call(obj) == "[object " + type + "]";
   }
};
var isString = isType('String');
var isFunction =  isType('Function');

这样创建isString()、isFunction()就方便了很多。这种通过指定部分参数来产生一个新的定制函数的形式就是偏函数。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容