Javascript 如何声明react js declare函数?

Javascript 如何声明react js declare函数?,javascript,reactjs,Javascript,Reactjs,声明函数有许多不同的方法,有些以分号结尾,有些则不然。我想知道区别是什么: A B 选项A:称为箭头功能 箭头函数不会在其函数体中重新定义此的值。这使得预测它们作为回调传递时的行为变得容易得多,并防止在回调中使用This引起的错误。因为它是箭头函数或函数表达式,所以需要以分号结尾 选项B:是正常功能它要求在回调中使用此和绑定。它是一个函数声明语句,因此不需要分号 重要信息:避免使用箭头函数,并在react中绑定渲染。这与Javascript有关,而不是react本身 第一个是函数表达式,建议使用

声明函数有许多不同的方法,有些以分号结尾,有些则不然。我想知道区别是什么:

A

B


选项A:称为箭头功能 箭头函数不会在其函数体中重新定义此的值。这使得预测它们作为回调传递时的行为变得容易得多,并防止在回调中使用This引起的错误。因为它是箭头函数或函数表达式,所以需要以分号结尾

选项B:是正常功能它要求在回调中使用绑定。它是一个函数声明语句,因此不需要分号


重要信息:避免使用箭头函数,并在react中绑定渲染。

这与Javascript有关,而不是react本身

第一个是函数表达式,建议使用分号,因为我们可能会遇到一些边缘和奇怪的情况。示例:

const foo=function(){
控制台日志(“第一”);
};
//不要太在意这个函数,它是来模拟我们的错误的,
//并且不必是箭头函数。

(()=>console.log(“第二”)()如果在渲染中绑定,则不需要以分号结尾 点击我 其他的
this.handleClick=this.handleClick.bind(this)

您能为您的代码示例添加更多的上下文吗(示例代码周围有更多的代码行)?这里不仅仅是分号的区别。阅读本详细指南:为什么我们要在渲染方法中避免使用箭头函数?我也很奇怪,因为我的建议正好相反。尽量避免在渲染中绑定,并使用对箭头函数或常规函数的函数引用。这会破坏使用shouldComponentUpdate和PureComponent实现的性能优化,因为箭头函数会在每个渲染中重新分配(与使用绑定相同)。这将使父组件中的箭头功能使子组件感觉到新功能被发送到道具和重播器中。好吧,误解你了。您的意思是避免在渲染中使用箭头函数和绑定JSX道具。这是真的,但与OP的要求无关。OP询问分号。是的。但他需要了解与之对应的选项,以了解为什么有些选项以分号结尾或不以分号结尾。一个是函数,另一个是箭头函数。
  addUser = id => {
    this.setState(// ...);
  };
selectTask(option) { this.setState({task: option}); }