目前我正在寻找获取元素访问权限的最快方法。
什么更快:
$('body').find('#elemID');
VS
var id = $('#elemID');
答案 0 :(得分:4)
Document.getElementById()
是最快的,不需要jQuery。然后,如果需要jQuery功能,可以使用$
将它包装在jQuery中。
答案 1 :(得分:1)
快速回答是没关系,但如果你必须选择除第一个以外的任何东西。
如果你担心性能会出现瓶颈,而不是微观优化。
尽可能尝试使用vanilla js,但是如果你使用Jquery也可以从中获得最大的收益。
const body = () => $('body').find('#elemID');
const id = () => $('#elemID');
const idJs = () => document.getElementById('elemID');
function performanceCalc(fn, params) {
const start = new Date()
const result = fn()
const end = new Date()
console.log(`Result: ${result} ${params}. Execution Time: ${end - start} ms`)
}
performanceCalc(body, 'body')
performanceCalc(id, 'id')
performanceCalc(idJs, 'idJs')
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="elemID"></div>