1、polifill是什么?
Polyfill 是一块代码(通常是 Web 上的 JavaScript),用来为旧浏览器提供它没有原生支持的较新的功能。
定义详见:https://developer.mozilla.org/zh-CN/docs/Glossary/Polyfill
2、使用polifill的场景
比如常用的Promise,在caniuse(https://caniuse.com/#search=promise)上面可查到该特性兼容的浏览器如下:
在某些较低版本的浏览器直接使用Promise就会报错,这时候就需要提供一个polifill。
3、一个简单的polifill
if (typeof Promise === 'undefined') {
require('promise/lib/rejection-tracking').enable();
window.Promise = require('promise/lib/es6-extensions.js');
}