shim和polyfill

在JavaScript的世界里,有兩個詞經(jīng)常被提到,shim和polyfill.它們指的都是什么,又有什么區(qū)別?

shim

shim是一個庫,它將一個新的API引入到一個舊的環(huán)境中,而且僅靠舊環(huán)境中已有的手段實現(xiàn)。

polyfill

polyfill就是一個用在瀏覽器API上的shim.我們通常的做法是先檢查當(dāng)前瀏覽器是否支持某個API,如果不支持的話就加載對應(yīng)的polyfill.然后新舊瀏覽器就都可以使用這個API了.

術(shù)語polyfill來自于一個家裝產(chǎn)品Polyfilla:Polyfilla是一個英國產(chǎn)品,在美國稱之為Spackling Paste(譯者注:刮墻的,在中國稱為膩子).記住這一點就行:把舊的瀏覽器想象成為一面有了裂縫的墻.這些[polyfills]會幫助我們把這面墻的裂縫抹平,還我們一個更好的光滑的墻壁(瀏覽器)Paul Irish發(fā)布過一個Polyfills的總結(jié)頁面“HTML5 Cross Browser Polyfills”.es5-shim是一個shim(而不是polyfill)的例子,它在ECMAScript 3的引擎上實現(xiàn)了ECMAScript 5的新特性,而且在Node.js上和在瀏覽器上有完全相同的表現(xiàn)(譯者注:因為它能在Node.js上使用,不光瀏覽器上,所以它不是polyfill).

轉(zhuǎn)自:百度知道

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,954評論 25 709
  • 官方中文版原文鏈接 感謝社區(qū)中各位的大力支持,譯者再次奉上一點點福利:阿里云產(chǎn)品券,享受所有官網(wǎng)優(yōu)惠,并抽取幸運大...
    HetfieldJoe閱讀 999評論 1 14
  • 文章總結(jié)的時間是2017/11/20 本文是為了梳理Babel配置及使用而整理,因為看過使用Babel配置項目和文...
    烈風(fēng)裘閱讀 22,881評論 4 18
  • 記:小時候我爹經(jīng)常說:“你好好學(xué)習(xí)吧,其它的你別管”.結(jié)果小時候?qū)W習(xí)并沒有因為唯一地目標(biāo)就變得輕而易舉,反而是目標(biāo)...
    景虤閱讀 150評論 0 0
  • 最近做網(wǎng)關(guān)系統(tǒng)對接第三方服務(wù),由于第三方系統(tǒng)網(wǎng)絡(luò)問題,讀取對方響應(yīng)超時導(dǎo)致大量超時重發(fā)。在第二次重發(fā)時,第三方系統(tǒng)...
    mohan_zl閱讀 470評論 0 0

友情鏈接更多精彩內(nèi)容