我应该如何解释这个三元运算符?

Jos*_*ung 2 javascript

const lerpFactor = {
    toggle: rightSide ? diff < 0 ? 0.15 : 0.1 : diff < 0 ? 0.1 : 0.15,
    title: rightSide ? diff < 0 ? 0.1 : 0.15 : diff < 0 ? 0.15 : 0.1
};
Run Code Online (Sandbox Code Playgroud)

我应该如何格式化它,以便像我这样的初学者可以理解?

Ber*_*rgi 6

从适当的缩进开始:

const lerpFactor = {
    toggle: rightSide
      ? diff < 0
          ? 0.15
          : 0.1
      : diff < 0
          ? 0.1
          : 0.15,
    title: rightSide
      ? diff < 0
          ? 0.1
          : 0.15
      : diff < 0
          ? 0.15
          : 0.1
};
Run Code Online (Sandbox Code Playgroud)

当然,无论是初学者还是不管,这段代码仍然是一团糟,很难理解。它毫无意义(当然,主要是因为伪代码),并且有很多重复项。因此,引入适当命名的函数,您可以调用它们来降低复杂性和重复性,并进行一些布尔简化:

function getFactor(diff, invert) {
    return invert !== (diff < 0)
      ? 0.15
      : 0.1;
}
const lerpFactor = {
    toggle: getFactor(diff, !rightSide),
    title: getFactor(diff, rightSide),
};
Run Code Online (Sandbox Code Playgroud)