Javascript 在react中,调用带括号和不带括号的函数有什么区别?

Javascript 在react中,调用带括号和不带括号的函数有什么区别?,javascript,reactjs,react-native,Javascript,Reactjs,React Native,我只是在写一段代码来更新父组件的状态。这段代码: handlePress() { this.props.count(); this.setState({completed: true}); }; 已管理更新父级的状态,其中作为此状态 handlePress() { this.props.count; this.setState({completed: true}); }; 没有。因此,调用带括号和不带括号的函数有什么区别?您所做的一切都是引用您作为道具传入的函

我只是在写一段代码来更新父组件的状态。这段代码:

handlePress() {
    this.props.count();
    this.setState({completed: true});
};
已管理更新父级的状态,其中作为此状态

handlePress() {
    this.props.count;
    this.setState({completed: true});
};

没有。因此,调用带括号和不带括号的函数有什么区别?

您所做的一切都是引用您作为道具传入的函数,您没有尝试执行它。您所做的与您所做的没有什么不同:

let count = 6;
count

第二行将是无用的,因为当您简单地使用
this.props.count
而不是实际使用
this.props.count()

调用函数时,您在这里调用它的方式与它在React中的使用方式无关。你有一个函数调用和一个(可能)nil属性。如果你没有括号,那么你根本就没有调用这个函数。(这不是一个语法错误,原因与将(
“test”;
放在一行上本身也不是语法错误相同,但仅仅因为某些东西在语法上是有效的,并不意味着它将执行您想要的操作。)从父组件添加
count
定义