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);
看了楼上的回答,楼主写写看?