如何解释方法参数中的表达式



在一个项目中,我找到了以下代码:

this.moveNode(node = this.getChildOf(node));

谁能解释一下执行node = this.getChildOf(node)后会传递给moveNode什么?

你的代码等效于

node = this.getChildOf(node);
this.moveNode(node);

你应该像我上面所做的那样在两个单独的指令中重构它,因为它使代码更具可读性和明显性。调试也更容易,因为您可以更轻松地选择将断点放在所需的任何位置。

这将按预期通过this.getChildOf(node)的返回。

执行将遵循以下顺序:

  1. this.getChildOf(node)被称为。
  2. 分配给node
  3. this.moveNode()被称为。

最新更新