作家
登录

测试JavaScript函数的性能

作者: 来源: 2017-08-10 16:52:45 阅读 我要评论

  •    } 
  •  
  •  }); 
  •  
  •  return found; 
  •  
  •  
  •   
  •  
  • console.log(isIn(['a','b','c'], 'B'));  // true 
  •  
  • console.log(isIn(['a','b','c'], 'd'));  // false 
  • 我们可以急速发明这个办法有改进的处所,因为haystack.forEach轮回总会遍历所有的元素,即使我们可以很快找到一个匹配的元素。如今让我们应用for轮回来编写一个更好的版本。

    1. function isIn(haystack, needle) { 
    2.  
    3.  for (var i = 0, len = haystack.length; i < len; i++) { 
    4.  
    5.    if (haystack[i].toLowerCase() === needle.toLowerCase()) { 
    6.  
    7.      return true
    8.  
    9.    } 
    10.  
    11.  } 
    12.  
    13.  return false
    14.  
    15.  
    16.   
    17.  
    18. console.log(isIn(['a','b','c'], 'B'));  // true 
    19.  
    20. console.log(isIn(['a','b','c'], 'd'));  // false 

    如今我们来看哪个函数更快一些。我们可以分别运行每个函数10次,然后收集所有的测量结不雅:

    1. function isIn1(haystack, needle) { 
    2.  
    3.  var found = false
    4.  
    5.  haystack.forEach(function(element) { 
    6.  
    7.    if (element.toLowerCase() === needle.toLowerCase()) { 
    8.  
    9.      found = true
    10.  
    11.    } 
    12.  
    13.  }); 
    14.  
    15.  return found; 
    16.  
    17.  
    18.   
    19.  
    20. function isIn2(haystack, needle) { 
    21.  
    22.  for (var i = 0, len = haystack.length; i < len; i++) { 

        推荐阅读

        17个案例带你3分钟搞定Linux正则表达式

      正则表达式是一种字符模式,用于在查找过程中匹配制订的字符。元字符平日在Linux平分为两类: Shell元字符,由Linux Shell进行解析; 正则表达式元字符,由vi/grep/sed/awk等文本处理>>>详细阅读


      本文标题:测试JavaScript函数的性能

      地址:http://www.17bianji.com/lsqh/36647.html

    关键词: 探索发现

    乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

    网友点评
    自媒体专栏

    评论

    热度

    精彩导读
    栏目ID=71的表不存在(操作类型=0)