JS编程建议——23推荐提高条件性能的策略

建议23:推荐提高条件性能的策略
与循环相似,条件表达式决定JavaScript 运行流的走向。与其他语言一样,JavaScript也采用了if 和switch 两种条件结构。由于不同浏览器针对流程控制进行了不同的优化,因此两者在性能上并没有特别大的差异,主要还是根据需求形式进行分析和选择:条件数量较大,建议选择switch 结构,而不是if结构,这样可以使代码更易读;如果条件较少时,建议选择if结构。

  1. //条件少
  2. if(found) {
  3. //执行代码
  4. } else {
  5. //执行代码
  6. }
  7. //条件多
  8. switch (color) {
  9. case "red":
  10. //执行代码
  11. break;
  12. case "blue":
  13. //执行代码
  14. break;
  15. case "brown":
  16. //执行代码
  17. break;
  18. case "black":
  19. //执行代码
  20. break;
  21. default:
  22. //执行代码
  23. }
    事实证明,在大多数情况下,switch比if运行更快,但是只有当条件体数量很大时才明显更快。switch与if的主要性能区别在于:当条件体增加时,if性能负担增加的程度比switch 更大。因此,从性能方面考虑,如果条件体较少,应使用if;如果条件体较多,应使用switch。

一般来说,if适用于判断两个离散的值或几个不同的值域。如果判断多于两个离散值,那么switch将是更理想的选择。

上一篇:错误:‘uuid_t’在此作用域中尚未声明


下一篇:linux内存占用过高原因