流程控制是否会影响js中的性能

是否检查预定的布尔值是对的还是对的?还是将这样的代码优化为2种不同的实现方式(考虑到V8和spidermonkey)?

示例1

let predeterminedBool = Math.random() < .5

callsCalbacksOften(() => {
  if (predeterminedBool) console.log("Task A")
  else console.log("Task B")
})

示例2

let predeterminedBool = Math.random() < .5
let chosenCallback

if (predeterminedBool) chosenCallback = () => {
  console.log("Task A")
}
else chosenCallback = () => {
  console.log("Task B")
}

callsCalbacksOften(chosenCallback)

对于大型任务(在代码行方面),示例变得非常庞大。产生基本复制的代码(对此条件执行)。尽管示例2似乎更有效。那么,示例1比示例2慢吗?如果是,请问有多少?还是这只是js语法的感知?

PS:这能很好地翻译成其他可以应用西耶尔概念的语言(例如Java)吗?

feixuezhangluo 回答:流程控制是否会影响js中的性能

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3078069.html

大家都在问