.. | ||
5 | ||
2015 | ||
2016 | ||
2017 | ||
2018 | ||
2019 | ||
2020 | ||
2021 | ||
2022 | ||
2023 | ||
helpers | ||
operations | ||
.editorconfig | ||
.eslintrc | ||
.nycrc | ||
CHANGELOG.md | ||
es5.js | ||
es6.js | ||
es7.js | ||
es2015.js | ||
es2016.js | ||
es2017.js | ||
es2018.js | ||
es2019.js | ||
es2020.js | ||
es2021.js | ||
es2022.js | ||
es2023.js | ||
GetIntrinsic.js | ||
index.js | ||
LICENSE | ||
package.json | ||
README.md |
es-abstract
ECMAScript spec abstract operations.
Every operation is available by edition/year and by name - for example, es-abstract/2020/Call
gives you the Call
operation from ES2020, es-abstract/5/Type
gives you the Type
operation from ES5.
All abstract operations are also available under an es5
/es2015
/es2016
/es2017
/es2018
/es2019
/es2020
/es2021
entry point, and as a property on the main
export, but using deep imports is highly encouraged for bundle size and performance reasons. Non-deep entry points will be removed in the next semver-major release.
Example
var ES = require('es-abstract');
var assert = require('assert');
assert(ES.isCallable(function () {}));
assert(!ES.isCallable(/a/g));
Tests
Simply clone the repo, npm install
, and run npm test
Security
Please email @ljharb or see https://tidelift.com/security if you have a potential security vulnerability to report.