ECMAScript 7 compatibility shims for legacy JavaScript engines

Downloads in past


17136.0.08 years ago9 years agoMinified + gzip package size for es7-shim in KB


!npm badge91
!Build Status34 !dependency status56 !dev dependency status78
ECMAScript 7 compatibility shims for legacy JavaScript engines.
es7-shim.js exports an object that contains shims that can be used to monkeypatch a JavaScript context to contain all ECMAScript 7 methods that can be faithfully emulated with a legacy JavaScript engine. es7-shim.browser.js calls the “shim” method on the export of es7-shim.js which actually modifies the global object, including replacing native methods when engine-specific bugs exist. Published on npm are dist/es7-shim.js and dist/es7-shim.min.js which are pre-prepared browserified versions of es7-shim.browser.js.

Source for shims

Every shim in this module is a separate, independent npm module. To be included, all shims must have a ".shim()" method that installs the shim into the global object whenever it is necessary. It should also handle any engine-specific specific to the method it is shimming.


Simply clone the repo, npm install, and run npm test


Array.prototype: includes standalonenpm-includes-url
Object: getOwnPropertyDescriptors standalonenpm-get-descriptors-url entries standaloneobject-entries-url values standaloneobject-values-url
String.prototype: at standalonestring-at-url trimLeft standalonestring-trimleft-url trimRight standalonestring-trimright-url padStart standalonestring-padstart-url padEnd standalonestring-padend-url


  • :warning: None yet!