Javascript 以下切换语句的有效性?

Javascript 以下切换语句的有效性?,javascript,performance,Javascript,Performance,我的程序有3-4秒的延迟时间,我怀疑这是我的开关。这是一个这样的转变 case "aword": //do something break; case "aword2": //do something break; 开关有大约20-25个外壳+断路器。我想知道这能解释我的滞后时间吗?如果是,您建议如何更正 切换条件为 chrome.extension.onRequest.addListener( function(request, sender, sendResponse) { swi

我的程序有3-4秒的延迟时间,我怀疑这是我的开关。这是一个这样的转变

case "aword":
//do something
break;
case "aword2":
//do something
break;
开关有大约20-25个外壳+断路器。我想知道这能解释我的滞后时间吗?如果是,您建议如何更正

切换条件为

chrome.extension.onRequest.addListener(
function(request, sender, sendResponse)
{
    switch(request.req)
    {
是什么让我怀疑开关是


我在switch调用之前有一个print语句,它可以很好地打印出来。然后,当开关在
//dosomething
之前找到案例时,它们的下一个打印在开关中。这让我相信问题在于找到这一个案例

我想“案例”部分不是问题所在。简单的字符串比较不会花费这么长的时间(3-4秒)。但你的“开关”情况如何?可能有什么耗时的东西…

肯定不是开关。我提出了另一种解决方案,但没有任何区别。回到这个问题上。

不要“怀疑”这些事情。把它拆分成一个函数,然后使用一个分析工具(你可以在Firebug、Chrome的开发工具中找到),我认为切换比
ifelseifelse
更好。你为什么认为这是个问题?只有20个开关应该不会太难。也许是字符串比较?尝试打开整数?我一直在使用Chrome开发工具来查看,它并没有告诉我我使用了多少打印语句,现在一切都指向了开关。
switch
是最简单和最古老的编程语言结构之一,应该是最佳优化之一。一个20-25格的
开关
几乎肯定不需要3-4秒。我要冒险说,像这样的开关,只要执行一次,性能就不会有问题。开关是否嵌入到环路中?循环在做什么?切换案例是做什么的(也就是说,“做点什么”实际上涉及到什么)?我已经把它添加到了问题中