mixin,柯里化

2019-06-02  本文已影响0人  kiterumer

mixin

最基本的 mixin 其实就是简单地将一个对象的属性复制给另一个对象:

function mixin(dest, src) {
    for (var key in src) {
        dest[key] = src[key]
    }
}

var person = {name: "akira", age: 25};
var student = {grade: 1};
mixin(student, person);

是不是有点像Object.assign()呢?
Object.assign方法用于对象的合并,将源对象(source)的所有可枚举属性,复制到目标对象(target)。

const target = { a: 1 };

const source1 = { b: 2 };
const source2 = { c: 3 };

Object.assign(target, source1, source2);
target // {a:1, b:2, c:3}

柯里化

只传递给函数一部分参数来调用它,让它返回一个函数去处理剩下的参数。
一个函数的返回值是一个函数。
react-redux中的connect便是一个柯里化函数

const App = connect(
  mapStateToProps,
  mapDispatchToProps
)(Counter)
上一篇下一篇

猜你喜欢

热点阅读