partial

    partial() 就是为一个函数创建偏函数。偏函数是什么东东?看例子:

    假设我们要计算x<sup>y</sup>,这时只需要调用 Math.pow(x, y) 就可以了。

    假设我们经常计算2<sup>y</sup>,每次都写 Math.pow(2, y) 就比较麻烦,如果创建一个新的函数能直接这样写 pow2N(y) 就好了,这个新函数 pow2N(y) 就是根据 Math.pow(x, y) 创建出来的偏函数,它固定住了原函数的第一个参数(始终为2):

    'use strict';



    var pow2N = _.partial(Math.pow, 2);

    pow2N(3); // 8

    pow2N(5); // 32

    pow2N(10); // 1024

    如果我们不想固定第一个参数,想固定第二个参数怎么办?比如,希望创建一个偏函数 cube(x) ,计算x<sup>3</sup>,可以用 _ 作占位符,固定住第二个参数:

    'use strict';



    var cube = .partial(Math.pow, , 3);

    cube(3); // 27

    cube(5); // 125

    cube(10); // 1000

    可见,创建偏函数的目的是将原函数的某些参数固定住,可以降低新函数调用的难度。