0

我不断地看到这种价值替换的模式,我试图弄清楚如何向我的同事解释这种替换。


问题

什么是正确的,确定的词:

  1. 这种替代
  2. 替代函数

在许多应用程序中,您需要重新查询该值,而不是使用现有的已定义变量。

高级用例:

  1. 蹦床
  2. 使用函数作为 React 子代,而不是 JSX / HTML

示例动画

const initialValue = (
  +(0.5 * window.innerHeight)
);

const remainingValue = (
  -(initialValue)
  +(0.25 * window.innerHeight)
);

function getTopValue (percentageComplete) {
  return (
    +(initialValue)
    +(percentageComplete * remainingValue)
  );
}

如果您要在几秒钟内使用 0 到 1 之间的值调用 getTopValue,您最终会以初始 + 剩余

但是,如果你要调整屏幕大小,你的最终目的地是不同的,你必须将剩余值变成一个函数,而不是一个值

const initialValue = (
  +(0.5 * window.innerHeight)
);

const remainingValue = () => (
  -(initialValue)
  +(0.25 * window.innerHeight)
);

function getTopValue (percentageComplete) {
  return (
    +(initialValue)
    +(percentageComplete * remainingValue())
  );
}
4

1 回答 1

0
  1. 惰性求值——延迟表达式求值直到需要它的值的策略
  2. thunk - 创建一个无参数闭包,以防止对表达式进行评估,直到稍后强制执行
于 2017-05-05T01:25:51.937 回答