2017-10-26 08:10:20 +02:00
---
title: Polyfill.io
category: JavaScript libraries
2020-07-05 13:11:36 +02:00
updated: 2018-08-20
2017-10-26 08:10:20 +02:00
intro: |
[Polyfill.io ](https://polyfill.io ) is a service that serves JavaScript polyfills.
---
## Usage
### Default usage
```html
< script src = "https://cdn.polyfill.io/v2/polyfill.min.js" > < / script >
```
{: .-wrap}
This is the default script for Polyfill.io.
### References
2018-08-20 03:03:18 +02:00
* [API example ](https://polyfill.io/v2/docs/api ) _(polyfill.io)_
* [List of features ](https://polyfill.io/v2/docs/features ) _(polyfill.io)_
2017-10-26 08:10:20 +02:00
## Optimized
### For modern browsers
```html
2018-08-20 03:03:18 +02:00
< script > if ( ! ( window . Promise && [ ] . includes && Object . assign && window . Map ) ) { document . write ( '<script src="https://cdn.polyfill.io/v2/polyfill.min.js"></scr' + 'ipt>' ) } < / script >
2017-10-26 08:10:20 +02:00
```
This only includes polyfill.io when necessary, skipping it for modern browsers for faster load times.
### Extra features
```html
2018-08-20 03:03:18 +02:00
< script > if ( ! ( window . fetch && window . Promise && [ ] . includes && Object . assign && window . Map ) ) { document . write ( '<script src="https://cdn.polyfill.io/v2/polyfill.min.js?features=default,fetch"></scr' + 'ipt>' ) } < / script >
2017-10-26 08:10:20 +02:00
```
This is the same as the previous, but also adds a polyfill for `window.fetch()` . We add a `window.fetch` check and loads the additional `fetch` feature.