码迷,mamicode.com
首页 > 其他好文 > 详细

函数Curry化

时间:2014-05-16 22:33:07      阅读:627      评论:0      收藏:0      [点我收藏+]

标签:style   blog   class   code   c   java   

Curry化技术是一种通过把多个参数填充到函数体中,实现将函数转换为一个新的经过简化的(使之接受的参数更少)函数的技术

写个例子,该函数的作用是改变一个div的样式

function changeStyle (obj,json){
     for(var attr in json){
         obj.style[attr] = json[attr]      
    }  
}

假如我接下来可能需要大量的针对某一个元素进行样式改变,这时候

 

bubuko.com,布布扣
function changeStyle(obj,json){
  if(typeof json === "undefined"){
    return function (json){
      cs(obj,json);
    }
  }else{
   cs(obj,json);
  }

  function cs(obj,json){
    for(var attr in json){
    obj.style[attr] = json[attr];
  }
}

bubuko.com,布布扣

下面是该函数的使用方法

var oDiv = document.getElementById("div");
changeStyle(oDiv)({
     "width":"100px",
    "height":"200px",
    "background-color":"#c06"
})        

这个例子仅仅是两个参数的情况,当参数较为复杂的时候,这种方法的好处就彻底的体现出来了

函数Curry化,布布扣,bubuko.com

函数Curry化

标签:style   blog   class   code   c   java   

原文地址:http://www.cnblogs.com/liqingchang/p/3725081.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!