Sent: Thursday, March 26, 2015 1:51 PM

Subject: jquery each vs for loop

在看前端代码的时候,看到不少地方都有用到jQuery.each() 方法,我昨天写的reuse lib enhancement的时候也有用到它,好奇jQuery.each() 和原生JS的for loop效率,找到一个对比,看起来原生for loop执行效率要高更多,于是我就refactor 为了原生for loop ?

出处: https://jsperf.com/browser-diet-jquery-each-vs-for-loop
[图片]

sap.cus.crm.lib.reuse.controls.Note.prototype._getDefaultNoteTypeId = function() {var defaultNoteTypeId = "",noteTypes = this.getModel().getProperty(this.getProperty("noteTypes"));// second iteration with for loops// console.time('start of for loop with caching');for (var i = 0, len = noteTypes.length; i < len; i ++) {if (noteTypes[i]["DefaultNoteType"]) {defaultNoteTypeId = noteTypes[i]["TextObjectID"];return defaultNoteTypeId;}}// console.timeEnd('end of for loop');
/* first iteration with jQuery.each()jQuery.each(noteTypes,jQuery.proxy(function(index){var sPrefix = this.getProperty("noteTypes") + "/" + index; // /NoteTypes/0var isDefault = this.getModel().getProperty(sPrefix + "/" +this.getProperty("noteTypeDefaultFlag")); // /NoteTypes/0/DefaultNoteTypeif (isDefault) {defaultNoteTypeId = this.getModel().getProperty(sPrefix + "/" +this.getProperty("noteTypeId"));return false;}}, this));
*/// return defaultNoteTypeId;
};

jQuery.each() 和原生JS的for loop效率对比相关推荐

  1. php前台限制输入text字符,限制字符输入数功能(jquery版和原生JS版)

    比较常用的限制字符输入数功能(比如热火超天的微博输入框),用jquery和原生JavaScript分别写了一个.原生JavaScript注释中有区分中英文字符的函数, 但个人并不建议这么做. 已知BU ...

  2. 用原生 js jquery 实现知乎收起答案功能

    Update 2016.12.7 已封装为插件 原生 js 插件$ npm install foldcontent-zhihu@">=3.0.12" --save Usage ...

  3. 【jQuery】学习一下JS库——jQuery

    [jQuery]学习一下JS库--jQuery jQuery 一.jQuery对象 01. 基本概念,区分DOM对象和jQuery对象 02. 两个对象之间的转换 二.jQuery的使用方法 关于隐式 ...

  4. 原生js封装十字参考线插件(一)

    需求来源: 拓扑图之机房平面图,显示机房长宽比例尺,房间内标注各种设备间距不易实现,特在机房平面图上层加一个十字参考线 横竖两条线垂直,在鼠标指针处交叉,显示鼠标指针坐标(相对机房平面图的坐标,不是相 ...

  5. 原生js的Ajax实例

    与jQuery不同,原生js的ajax的实现相比来说复杂一些,因为jquery中的$.ajax()方法已经把js的实现封装起来,使用起来更加方便.但是,原生js的实现过程,对于理解ajax,好像更清晰 ...

  6. dw按钮图片滚动js_轮播图--swiper插件/原生js/jQuery

    1.swiper插件: 需要下载该插件到本地,并用link标签引用其swiper-bundle.min.css文件,用script引用其swiper-bundle.min.js文件,下载地址及官方文档 ...

  7. 原生JS和jQuery操作DOM的区别小结

    一.Js原生对象和jQuery实例对象的相互转化: (1).原生JS对象转JQ对象: $(DOM对象); (2). JQ对象转原生JS对象: $(DOM对象).get(index); //注意区分eq ...

  8. 前端那些事之原生js实现jquery常用方法

    2019独角兽企业重金招聘Python工程师标准>>> 原生js封装,实现jquery中常用 方法 //定义一个对象 - 名字是$ var $$ = function() {this ...

  9. AJAX请求和跨域请求详解(原生JS、Jquery)

    一.概述 AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术. AJAX = 异步 JavaScript 和 XML,是一种用于创建快速动态网页的技术.通过在后台与服务器进行少量数 ...

最新文章

  1. Linux那些事儿 之 戏说USB(8)从这里开始
  2. 今天,我辞去了亚马逊年薪 50 万美金的工作!
  3. halcon学习笔记——(1)单摄像机标定
  4. tomcat错误: javax.management.MalformedObjectNameException: Invalid character ':' in value part of prop
  5. python中的装饰器-(重复阅读)
  6. 计算机网络的构成教学反思,《计算机网络知识》教学反思.doc
  7. Spring MVC 3.0 返回JSON数据的方法
  8. 2.9_double_link_list_双链表
  9. Java项目-食堂菜品点评系统(SpringBoot + SpringSecurity + Thymeleaf + Redis)
  10. 网页版pdf转换方法
  11. 关于服务器磁盘配额超出的问题解决(报错源码是Disk quota exceeded)
  12. 流媒体后视镜前装搭载小幅下滑,远峰与镜泰排位争夺白热化
  13. Hexo博客使用 Next主题 后的一些相关配置 记录
  14. 2022年最简单旋转PDF页面的方法推荐
  15. 程序员和工程师有什么不一样?
  16. 如何开发自己的通用Mapper
  17. 网络规划 华为模拟器ensp
  18. VS2017中自用部分插件的设置的翻译或功能介绍—— Viasfora设置(一)
  19. cpu空载50度_高性价比6热管全镀镍CPU散热器来了 超频三东海风云GI-R66U体验
  20. 网络中工作组中计算机无法访问或没有选项的解决办法汇总

热门文章

  1. 关于vc6 在mfc ClassWizard中无法添加成员变量
  2. JavaWeb(part2)--request
  3. 心电信号去噪(part4)--经验模态分解法(EMD)
  4. HTML基础(part1)--预备知识
  5. 训练时loss:0.000e+00_其他品牌还在找不到00后营销方向盘时,小度智能音箱发车了…....
  6. @transactional 接口_Spring事物(@transactional注解)在什么情况下会失效,为什么?...
  7. 用Python制作酷炫的可视化报表。
  8. SAP Spartacus Accessibility E2E 端到端测试
  9. SAP Spartacus Unit List树形数据的加载触发时机
  10. 使用Java Spring消费MySQL中的数据库存储过程