Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/432.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Jquery查找vs id属性_Javascript_Jquery - Fatal编程技术网

Javascript Jquery查找vs id属性

Javascript Jquery查找vs id属性,javascript,jquery,Javascript,Jquery,目前,我正在寻找访问元素的最快方法 更快的是: $('body').find('#elemID'); vs Document.getElementById()是最快的,不需要jQuery。然后,如果需要jQuery功能,您可以选择在jQuery中使用$。文档。getElementById()是最快的,不需要jQuery。然后,如果需要jQuery功能,您可以选择使用$将其包装到jQuery中。快速回答是,这并不重要,但如果您必须选择一个,而不是第一个 如果您担心性能,请查找瓶颈,而不是微观优化

目前,我正在寻找访问元素的最快方法

更快的是:

$('body').find('#elemID');
vs


Document.getElementById()
是最快的,不需要jQuery。然后,如果需要jQuery功能,您可以选择在jQuery中使用
$

文档。getElementById()
是最快的,不需要jQuery。然后,如果需要jQuery功能,您可以选择使用
$
将其包装到jQuery中。

快速回答是,这并不重要,但如果您必须选择一个,而不是第一个

如果您担心性能,请查找瓶颈,而不是微观优化

如果可能的话,试着使用vanillaJS,但是如果你使用Jquery,你也可以从中得到最大的好处

constbody=()=>$('body')。查找('elemID');
常量id=()=>$('#elemID');
const idJs=()=>document.getElementById('elemID');
功能性能ALC(fn,参数){
const start=新日期()
常量结果=fn()
const end=新日期()
log(`Result:${Result}${params}。执行时间:${end-start}ms`)
}
performanceCalc(主体,“主体”)
performanceCalc(id,‘id’)
performanceCalc(idJs,'idJs')

快速回答是,这并不重要,但如果你必须选择一个,除了第一个以外的任何东西

如果您担心性能,请查找瓶颈,而不是微观优化

如果可能的话,试着使用vanillaJS,但是如果你使用Jquery,你也可以从中得到最大的好处

constbody=()=>$('body')。查找('elemID');
常量id=()=>$('#elemID');
const idJs=()=>document.getElementById('elemID');
功能性能ALC(fn,参数){
const start=新日期()
常量结果=fn()
const end=新日期()
log(`Result:${Result}${params}。执行时间:${end-start}ms`)
}
performanceCalc(主体,“主体”)
performanceCalc(id,‘id’)
performanceCalc(idJs,'idJs')


如果您使用jQuery,您并不真正关心性能。第二个更快,但第一个比
$(“body#elemId”)
更快。在jsperf上运行一些测试并亲自查看(它们可能已经在那里)您正在使用jQuery,因此性能有点无关紧要(至少要担心哪个选择器更快)。但是,后者速度更快,因为只有一个DOM访问。前者无论如何都是多余的,因为DOM中应该只有一个元素具有
id
。如果你关心绩效,几乎肯定有更好的地方可以让你集中注意力。document.getElementById()可能比这两者都快(而且你没有花钱加载jquery)。例如,如果你使用jquery,你并不真正关心性能。第二个更快,但第一个比
$(“body#elemId”)
更快。在jsperf上运行一些测试并亲自查看(它们可能已经在那里)您正在使用jQuery,因此性能有点无关紧要(至少要担心哪个选择器更快)。但是,后者速度更快,因为只有一个DOM访问。前者无论如何都是多余的,因为DOM中应该只有一个元素具有
id
。如果你关心绩效,几乎肯定有更好的地方可以让你集中注意力。document.getElementById()可能比这两个都快(而且您没有付费加载jquery),例如,如果有人想知道,在Win10上的Chrome中这大约快40%:。尽管如此,jQuery仍然可以每秒执行约250万次操作,因此这并不是一个值得创建更多详细代码的关键区别。该死,我刚刚得到了我自己的答案未被接受xD唯一公平的是,如果有人想知道,这在Win10上的Chrome中大约快了40%:。尽管如此,jQuery仍然可以每秒执行约250万次操作,因此这并不是一个值得创建更多详细代码的关键区别。该死,我只是得到了我自己的答案未被接受xD,这是唯一公平的
var id = $('#elemID');