小编典典

Javascript切换与if ... else if ... else

javascript

伙计们,我有几个问题:

  1. switch语句和an 之间在JavaScript中是否存在性能差异if...else
  2. 如果可以,为什么?
  3. 是的行为switchif...else跨浏览器的不同?(FireFox,IE,Chrome,Opera,Safari)

提出这个问题的原因是,switch在Firefox中大约有1000多个案例的情况下,我似乎获得了更好的性能。


编辑
Unfortuantly这不是我的代码JavaScript是正在生产服务器端从编译的库,我要的代码的访问权限。产生javascript的方法称为

CreateConditionals(string name, string arrayofvalues, string arrayofActions)

note arrayofvalues是用逗号分隔的列表。

它产生的是

function [name] (value) {
  if (value == [value from array index x]) {
     [action from array index x]
  }
}

注意:其中[name]=传递给服务器端函数的名称

现在,我更改了要插入TextArea的函数的输出,编写了一些JavaScript代码以解析该函数​​,然后将其转换为一组case语句。

最后,我运行了该函数,并且运行良好,但是在IE和Firefox中性能有所不同。


阅读 329

收藏
2020-05-01

共1个答案

小编典典

一般回答:

  1. 是的,通常。
  2. 在这里查看更多信息
  3. 是的,因为每个人都有不同的JS处理引擎,但是,在下面的站点上运行测试时,开关总是在大量迭代中执行if,elseif。
2020-05-01