美文网首页
用ramdajs简化函数

用ramdajs简化函数

作者: 方健 | 来源:发表于2016-12-23 13:01 被阅读156次

    有这么一种情况,一个函数有多个参数,有些参数已经确定,要从参数表中消去。得到参数更少的简化函数。这个过程,可以用curry化来完成。

    例如,有一个函数,用于发起GET请求,读取网页上一个内容。这个内容采用了RESTful的接口。请求数据的url为 http://host/something/_id

    函数签名: getData(prefix,id)

    调用举例:getData('http://host/something/',1)

    当prefix已知时,我希望简化这个函数。构造函数getPost(id)

    getPost(id) <=> getData('http://host/post/',id)
    

    以前我的做法是:

    function getPost(id){
      return getData('http://host/post/',id)
    }
    

    这样固然是可以的,但是如果有大量这样的包装函数要写,也是很麻烦的事。

    ramdajs,可以简单一点。

    const _getData= R.curry(getData);
    const getPost=_getData('http://host/post/')
    

    相关文章

      网友评论

          本文标题:用ramdajs简化函数

          本文链接:https://www.haomeiwen.com/subject/czdkvttx.html