歡迎來(lái)我的專欄查看系列文章。 Sizzle 原本是 jQuery 中用來(lái)當(dāng)作 DOM 選擇器的,后來(lái)被 John Resig 單獨(dú)分離出去,成為一個(gè)單獨(dú)的項(xiàng)目,可以直接導(dǎo)入到項(xiàng)目中使用。jquery/sizzle。 本來(lái)我們使用 jQuery 當(dāng)作選擇器,選定一些 #id 或 ...
讀Sizzle的源碼,分析的Sizzle版本號(hào)是2.3.3。 Sizzle的Github主頁(yè) 瀏覽器原生支持的元素查詢方法: 方法名 方法描述 兼容性描述 getElementById 根據(jù)元素ID查詢?cè)?IE6+, Firefox 2+, Chrome 4+, Safari 3.1+ getElementsByTagName 根據(jù)元素名稱查...
...s 數(shù)組中是 type 是有 tag、attr 和連接符之分的,區(qū)分它們 Sizzle 也是有一套規(guī)則的,比如上一章我們所講的 Expr 對(duì)象,它真的非常重要: Expr.relative = { >: { dir: parentNode, first: true }, : { dir: parentNode }, +: { dir: previousSibling...
歡迎來(lái)我的專欄查看系列文章。 compile 講了這么久的 Sizzle,總感覺(jué)差了那么一口氣,對(duì)于一個(gè) selector,我們把它生成 tokens,進(jìn)行優(yōu)化,優(yōu)化的步驟包括去頭和生成 seed 集合。對(duì)于這些種子集合,我們知道最后的匹配結(jié)果是來(lái)...
...關(guān)鍵字、標(biāo)識(shí)符、標(biāo)點(diǎn)、字符串等進(jìn)行劃分,生成單詞。Sizzle 選擇器的匹配思路和這非常像,在內(nèi)部叫做 Tokens。 Tokens 詞法分析 其實(shí)詞法分析是匯編里面提到的詞匯,把它用到這里感覺(jué)略有不合適,但 Sizzle 中的 tokensize函數(shù)干...
...elector是一個(gè).ClassName //具體過(guò)程為jQuery.fn.find->jQuery.find->Sizzle //最后會(huì)調(diào)用Sizzle方法,這是jQuery選擇器的核心方法,是一個(gè)獨(dú)立的引擎,等到了后面我看懂了再告訴大家吧 (逃 } else if ( !context || context.jquery ) { return ( context || ...
...是map,python中是dict。即從上一步的html中,找到每一薦的sizzle,執(zhí)行prefix,suffix即前后綴移除(過(guò)濾如同價(jià)格:xxx元,前綴為價(jià)格:,后綴為元)。對(duì)了,sizzle也是一個(gè)開(kāi)源技術(shù),據(jù)說(shuō)以前鼎鼎有名的Jquery也是sizzle引擎。Jav...
...gth = 1; } return this; } // 處理一般的情況,find 實(shí)際上上 Sizzle,jQuery 已經(jīng)將其包括進(jìn)來(lái),下章詳細(xì)介紹 // jQuery.find() 為 jQuery 的選擇器,性能良好 } else if (!context || context.jquery) { return (context || root).find(selecto...
... $(#id).find(tag.thing) --- faster $(#id tag.thing) ------- using sizzle 原作者在這里說(shuō)了一個(gè)jquery效率的問(wèn)題,上面的方法更快一些,而下面的方法稍微慢,簡(jiǎn)單地說(shuō)是因?yàn)橄旅娴姆椒ㄕ{(diào)用了sizzle,通過(guò)sizzle其實(shí)轉(zhuǎn)換成上述的模式,而id...
歡迎來(lái)我的專欄查看系列文章。 講真,Sizzle 的源碼真的太壓抑了,以至于寫 Sizzle 文章的這段時(shí)間里都非常的痛苦,剛開(kāi)始覺(jué)得它還挺有意思的,越到后面越覺(jué)得代碼很難讀懂,煩。 寒假也過(guò)完了,在家里待了兩周的時(shí)間,...
...節(jié)也簡(jiǎn)單的列了一下。這節(jié)就找一點(diǎn)騷東西說(shuō)一說(shuō)吧。 Sizzle 選擇器引擎 先問(wèn)問(wèn)DOM的API查找性能,有不知道的嗎?由快到慢 ID > Class > Name > Tag。CSS 選擇器匹配的順序,有不知道的嗎?從左往右jQuery的選擇器匹配的順序,有沒(méi)有...
...節(jié)也簡(jiǎn)單的列了一下。這節(jié)就找一點(diǎn)騷東西說(shuō)一說(shuō)吧。 Sizzle 選擇器引擎 先問(wèn)問(wèn)DOM的API查找性能,有不知道的嗎?由快到慢 ID > Class > Name > Tag。CSS 選擇器匹配的順序,有不知道的嗎?從左往右jQuery的選擇器匹配的順序,有沒(méi)有...
...器 選擇器非常重要。JQ特別把選擇器部分剝離出一個(gè)庫(kù)sizzle.js。現(xiàn)在的JQ內(nèi)部也是調(diào)用JQ里面的sizzle。選擇器三個(gè)字寫得簡(jiǎn)單,代碼寫起來(lái)就很有學(xué)問(wèn),sizzle.js這種高大上的我就不說(shuō)了。我這里簡(jiǎn)單實(shí)現(xiàn)一些功能:選擇class/i...
...Query.text 方法,找了半天才找到它在哪里,原來(lái)調(diào)用的是 Sizzle 中的方法: jQuery.text = Sizzle.getText; var getText = Sizzle.getText = function( elem ) { var node, ret = , i = 0, nodeType = elem.nodeType; if...
...,所以速度較快。 對(duì)比:$(#parent > .child) jQuery內(nèi)部使用Sizzle引擎,處理各種選擇器。Sizzle引擎的選擇順序是從右到左,所以這條語(yǔ)句是先選.child,然后再一個(gè)個(gè)過(guò)濾出父元素#parent,這導(dǎo)致它比最快的形式大約慢70%。 $(#paren...
ChatGPT和Sora等AI大模型應(yīng)用,將AI大模型和算力需求的熱度不斷帶上新的臺(tái)階。哪里可以獲得...
大模型的訓(xùn)練用4090是不合適的,但推理(inference/serving)用4090不能說(shuō)合適,...
圖示為GPU性能排行榜,我們可以看到所有GPU的原始相關(guān)性能圖表。同時(shí)根據(jù)訓(xùn)練、推理能力由高到低做了...