问题描述
我很好奇在ReactJS中定义值之前如何使用它?这是一个示例:
function Counterapp() {
const [counter,setCounter] = useState(0);
const increaseValueTwice = () => {
increaseValue() //NOT DEFINED AT THIS POINT
increaseValue() //NOT DEFINED AT THIS POINT
}
const increaseValue = () => {
setCounter(prevCounter => prevCounter + 1);
};
return (
<div>
{counter}
<br / >
<button onClick={increaseValue}>Increase value</button>
<br / >
<button onClick={increaseValueTwice}>Increase value twice</button>
</div>
);
}
increaseValue()在定义之前就已使用,但是没有问题。我观看了2019年的一些教程,而该教程中的人在尝试执行此操作时遇到了错误,尽管它不应该对我有用?
解决方法
只要在变量声明之前未执行该代码,我们甚至可以在声明它们之前在代码中引用它们。
在函数运行时(响应click事件),已经声明了const。
,我认为您正在寻找的概念是
基本上,javascript解释器首先读取给定范围的所有变量声明,然后开始调用函数。在您的情况下,这更加复杂,因为函数之间会相互调用,但仍然适用。
尽管这是特定于javascript的逻辑,所以如果您来自其他语言,则可能是新事物。
通过浏览器控制台或Node.js运行普通JS代码,您应该能够复制这个确切的东西。它不是特定的反应。