关于jquery性能最佳实践的讨论,与求教_jquery

原因是我在测试的时候:带入了错误的变量。具体可以查看图片上的 $(parentID > childClass) 我直接比较两个字符换大小了!
感谢 html5中文网 QQ群中的 “不见丘比特”。

其中第三点提到父元素与子元素的关系中提到了 从父元素选择子元素的用例:

复制代码 代码如下:

 $('.child', $parent)
  $parent.find('.child')
  $parent.children('.child')
  $('#parent > .child')
  $('#parent .child')
  $('.child', $('#parent'))

在其所给的测试用例中 确实是使用jquery的find方法最快,但是稍作修改却得到了另外的一个结果$('#parent > .child')完胜。

在作者的用例中只是直接缓存了对象 $('#parent');但是当我们把dom的id和class属性作为常量定义并传入测试用例中的时候就出现我说的另外一个结果。
作者原生测试页面:http://jsperf.com/bell-selector
结果截图:

修改后的测试页面:http://jsperf.com/bell-selector/2
结果截图:

同时给我我从真实环境中取出来的一块代码段所做的测试,同样也是$('#parent > .child')这样的写法最快。
测试页面:http://jsperf.com/findchildren
结果截图:

从以上结果截图中可以看到,我给出的两个测试结果明显是使用了大于号选择符的那个性能做好。

请各位看到此文或者了解详情的能给一个说明。关于文章中的其它内容都是比较好的观点。
文章:http://www.jb51.net/article/28056.htm

园子中那位有时间和条件的可以对以上各个操作做一次调试,给出详细的流程说明。我要等到手中的项目做完才有时间来调试这个过程。

时间: 2024-09-16 23:04:50

关于jquery性能最佳实践的讨论,与求教_jquery的相关文章

DB2 9 中 15 个 pureXML 性能最佳实践

原文http://www.ibm.com/developerworks/cn/data/library/techarticles/dm-0610nicola/   DB2 9 中 15 个 pureXML 性能最佳实践 Matthias Nicola (mnicola@us.ibm.com), DB2/XML Performance, IBM Silicon Valley Laboratory 简介: DB2 9 引入了 pureXML 支持,这意味着 XML 数据将以其固有的层次格式被存储和查

如何保证高质量的—移动APP的性能最佳实践

加速之必要 不考虑技术,有一件事是肯定的--人们似乎总是希望可以更快.根据各种各样的研究,现在用户只愿意等待一个web应用程序加载三秒或更短的时间,超过的话,他们就会变得越来越不耐烦或者干脆换一个应用程序.这些高期待不断被压到移动web之上:现在还压到移动App上.就像Web,现今的移动移动app都有它们自己的性能问题并需要做出一些微调.最新研究表明,过去,在手机上获取app时,47%的移动用户主要是抱怨速度慢且反应迟钝.App在苹果的app商店上被谴责"慢得可怕".对于Faceboo

热点推荐:七个相关jQuery的最佳实践

前言 随着富网络应用(rich web applications)数量的增长,以及用户对快速交互响应的高期望,开发者开始使用JavaScript库来快速高效的完成一些重复性的工作.这其 中最流行的JavaScript库就是jQuery.但是jQuery的大量应用却带来了另外一个问题:在使用JavaScript库的时候,有哪些最佳 实践,又有哪些不好的实践呢? 背景 在这篇文章中,我会给大家介绍在编写.调试和审查JavaScript代码的时候一些好的实践(至少我是这么认为的).事实上,我选择了其中

jquery提升性能最佳实践小结_jquery

将jquery对象缓存起来在 for循环中,不要每次都要访问数组的length属性,我们应该先将对象缓存进一个变量然后再操作,如下所示: 复制代码 代码如下: var myLength = myArray.length; for (var i = 0; i < myLength; i++) { // 要做的事 } 在循环外使用append 进行DOM操作是有代价的,如果需要往DOM中添加大量元素,你应该一次批量完成,而不是一次一个. 复制代码 代码如下: // 别这样 $.each(really

DB2 9中15个pureXML性能最佳实践

DB2 9引入了pureXML支持,这意味着XML数据将以其固有的层次格式被存储和查询.为了查询 XML数据,DB2 提供了两种语言,SQL/XML和XQuery.此外,DB2 9 还具有成熟的XML 索引功能和对 XML 模式验证的支持.虽然大多数已有的关于DB2性能的指南同样适用于XML数据,但是本文还将提供其他一些特定于XML的性能方面的提示. 简介 DB2 9中的pureXML支持为管理XML数据提供了有效的.多方面的功能.对于很多XML应用程序而言,性能是高度优先考虑的一个方面.DBA

ASP.NET性能最佳实践

asp.net|性能 根据MSDN webcast 整理 逻辑/物理设计实践推荐 : 使用逻辑三层模型 页面(.aspx)和用户控件(.ascs) 可重用类型(组件)放在\bin目录下 数据放在SQL数据库中 推荐 : 为Web Farm设计 不要假定访问者永远会回到同一服务器 注意静态变量和应用状态 Web Farm会话状态 推荐 : 用同一个进程 应避免(可能时): 对XML Web服务的同步调用 通过DCOM的远程调用 使用XML Web 服务 : 因特网上应用之间的通讯 不要用于应用内通

C# DataSet性能最佳实践

C# 性能优化细节 1.使用ItemArray实现对DataRow的批量赋值 在对DataRow的所有字段赋值时,使用字段名进行逐列赋值效率较低.这时应尽量使用批量字段赋值.可以使用ItemArray或rows.Add方法: / ds是数据集(DataSet)对象 DataTable dt = ds.Tables[0]; DataRow row = dt.NewRow(); row.ItemArray = new object[] { value1, value2, -, valuen }; /

iOS代码进行设备屏幕判断的最佳实践方案讨论

  目前开发的项目由于历史原因均用代码编写UI,所以判断设备尺寸成了不可避免的任务. 目前我是这样进行尺寸判断的. 首先定义一个枚举类,包含了所有的尺寸类型: // 屏幕尺寸的枚举类型typedef NS_ENUM(NSUInteger, ScreenSizeType) { iPhone4Size, // 480 iPhone5Size, // 568 iPhone6Size, // 667 iPhone6pSize, // 736}; 然后写一个静态函数获取当前的尺寸类型: +(ScreenS

针对基础设计、性能和可管理性的DB2最佳实践

在过去几年中,产生了很多著作论述关于 DB2 设计和实现的最佳实践,包括大量图书和文章.这些著作深入探讨了如何设计 DB2 并将其集成到应用程序中.为了提供一些基本指导以让客户和业务合作伙伴了解这些内容,本文汇编了在使用 IBM DB2 技术设计和实现应用程序时需要考虑的一系列最佳实践.本文的目标是获得更加有效和高效的 DB2 实现.本文不会为现有 DB2 客户和独立软件开发商(ISV)提供详细的性能最佳实践. 简介 DB2 for Linux, UNIX, and Windows 提供了一个数