shim和polyfill在javascript中的含义

在JavaScript的世界里,有两个词经常被提到,shim和polyfill。它们指的都是什么,又有什么区别?

shim

一个shim是一个库,它将一个新的API引入到一个旧的环境中,而且仅靠旧环境中已有的手段实现。

polyfill

一个polyfill就是一个用在浏览器API上的shim。我们通常的做法是先检查当前浏览器是否支持某个API,如果不支持的话就加载对应的polyfill,然后新旧浏览器就都可以使用这个API了。
posted @ 2017-02-09 22:07  胡锡铭  阅读(428)  评论(0编辑  收藏  举报