首页 > es6里xxx()(xxx)是什么意思?

es6里xxx()(xxx)是什么意思?

react一些工具的example里经常看到有这样的写法
xxx()(组建名称)比如说

BasicDemo = createForm()(BasicDemo);

这表示什么意思?


举一个简单的例子:

function createForm() {
    return function inlineFuc(param) {
        console.log(param);
    }
}

var BasicDemo = 'hello world';
BasicDemo = createForm()(BasicDemo);

console.log(`${BasicDemo}`)

createForm() 的返回值是一个函数(inlineFuc),后面的 (BasicDemo) 是接着调用这个inlineFuc函数。


这和es6没什么关系,就是createForm()是返回一个function, 然后再调用这个function。

BasicDemo = createForm()(BasicDemo);

等同于

const factory = createForm()
BasicDemo = factory(BasicDemo)

以前面试的时候还有被问到,
就是链式调用变量
createForm()要return一个function

我当时遇到的问题是编写函数 add(a)(b)(c);
看了楼上的回答,楼主写写看?

【热门文章】
【热门文章】