Re: [問題] Jquery Find的效能
我的看法
※ 引述《scribeTW (scribe)》之銘言:
: ※ 引述《Futurend (未來)》之銘言:
: : 假如說我有一個div叫做 divContent
: : 我今天想要找一個input,我知道他在divContent下面
: : 那我有三種方法可以取得他
: : 1) $('#inputId');
: : 2) var $content = $('#divContent');
: : $content.find('#inputId');
: : 3) var $content = $('#divContent');
: : $('#inputId', $content');
2,3 是同一件事,差異只差一層 function call,差不到哪去。
1 應該最快,理由其他人說過了。
: : 後面兩種方法的效能我猜測應該是優於第一種
: : 但2跟3這兩個方法哪種效能比較好呢
: : 或著有其他更好的寫法
: : 請前輩指點了
: 其實第1種是最快的。
: 理由是有ID值,jQuery直接就會用document.getElementById()取得,
: 這是瀏覽器原生函數,速度最快。
: 再來jQuery的原始碼其實 $(expr, content) = $(content).find(expr),
: 不過前者其實還有經過許多判斷,所以後者還比較快一些些。(少一些判斷流程)
: 結論:1 > 2 > 3
1 > 2 =~ 3
: 另外推文提到的$('#divContent #inputId'),等同於
: $(document).find('#divContent #inputId')。
在 1.4.3 這個有機會比較快一點,因為可以直接走原生函式,
不過應該跟 2,3 相差不到哪去。
: ---
: 想知道真的是看jQuery釋出的未壓縮Development Source Code最快。
: 你會看到裡面有很多註解。
--
我:一半的日子讓你說,我聽你說你的所有______________________________________
______________________________________一半的日子我想說,對你說過去的所有:我
_______________________________________________________
在討論中妥善扮演兼具聆聽與分享的角色,是我們一生的課題。
_______________________________________________________
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.137.61.228
推
10/22 15:46, , 1F
10/22 15:46, 1F
→
10/22 19:40, , 2F
10/22 19:40, 2F
→
10/22 20:59, , 3F
10/22 20:59, 3F
→
10/23 00:29, , 4F
10/23 00:29, 4F
→
10/23 01:58, , 5F
10/23 01:58, 5F
→
10/23 01:59, , 6F
10/23 01:59, 6F
→
10/23 01:59, , 7F
10/23 01:59, 7F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 4 之 4 篇):
Ajax 近期熱門文章
PTT數位生活區 即時熱門文章