为什么 React Component 函数构造函数中的方法在组件初始化后进行评估?

why is method within React Component function constructor evaluating after the components have been initialized?

抱歉,如果标题难以理解,因为这绝对是一个奇怪的问题。

我认为这张截图最能说明发生了什么,从编程的每一个角度来看,它对我来说都毫无意义。无论 PL 是解释还是编译,我都希望同一函数中的两行按连续顺序求值。

但是在这种情况下不是:

您可以在这个 side-by-side 屏幕截图中清楚地看到,我希望在第一行 之后 打印的行实际上 printed/evaluated第一.

这对我来说是个问题,因为我在 React 组件构造函数中调用 index.getObject 方法的全部原因是要在 object 本身中使用响应。所以现在所有的 React 组件都只使用 destName = null.

谁能解释一下这种行为? (如果有办法确保第一行首先评估,则加分)

用于解释行为的附加图片:

正如@RandyCasburn 所暗示的,这似乎是您的 index.getObject 方法是异步 JavaScript 调用的问题。这意味着当调用 index.getObject 时,JavaScript 在等待 index.getObject 调用的结果时继续执行代码。

这是 Stack Overflow 上异步 JavaScript 问题的规范答案:Why is my variable unaltered after I modify it inside of a function? - Asynchronous code reference