JSPM

  • Created
  • Published
  • Downloads 63358844
  • Score
    100M100P100Q240860F
  • License MIT

ECMAScript spec abstract operations.

Package Exports

  • es-abstract
  • es-abstract/2015/HasOwnProperty
  • es-abstract/2018/IsCallable
  • es-abstract/2018/PromiseResolve
  • es-abstract/2018/RequireObjectCoercible
  • es-abstract/2018/SameValueZero
  • es-abstract/2018/SpeciesConstructor
  • es-abstract/2018/ToInteger
  • es-abstract/2018/ToLength
  • es-abstract/2018/ToObject
  • es-abstract/2018/Type
  • es-abstract/2019/AddEntriesFromIterable
  • es-abstract/2019/AdvanceStringIndex
  • es-abstract/2019/ArrayCreate
  • es-abstract/2019/ArraySpeciesCreate
  • es-abstract/2019/Call
  • es-abstract/2019/Call.js
  • es-abstract/2019/CreateDataProperty
  • es-abstract/2019/CreateDataPropertyOrThrow
  • es-abstract/2019/CreateIterResultObject
  • es-abstract/2019/CreateMethodProperty
  • es-abstract/2019/DateFromTime
  • es-abstract/2019/DefinePropertyOrThrow
  • es-abstract/2019/FlattenIntoArray
  • es-abstract/2019/Get
  • es-abstract/2019/GetMethod
  • es-abstract/2019/GetSubstitution
  • es-abstract/2019/HasOwnProperty
  • es-abstract/2019/HasProperty
  • es-abstract/2019/HourFromTime
  • es-abstract/2019/IsArray
  • es-abstract/2019/IsCallable
  • es-abstract/2019/IsConstructor
  • es-abstract/2019/IsInteger
  • es-abstract/2019/IsRegExp
  • es-abstract/2019/IterableToList
  • es-abstract/2019/MinFromTime
  • es-abstract/2019/MonthFromTime
  • es-abstract/2019/ObjectCreate
  • es-abstract/2019/OrdinarySetPrototypeOf
  • es-abstract/2019/PromiseResolve
  • es-abstract/2019/RegExpExec
  • es-abstract/2019/RequireObjectCoercible
  • es-abstract/2019/RequireObjectCoercible.js
  • es-abstract/2019/SameValue
  • es-abstract/2019/SecFromTime
  • es-abstract/2019/Set
  • es-abstract/2019/SpeciesConstructor
  • es-abstract/2019/SpeciesConstructor.js
  • es-abstract/2019/TimeClip
  • es-abstract/2019/ToBoolean
  • es-abstract/2019/ToInteger
  • es-abstract/2019/ToInteger.js
  • es-abstract/2019/ToLength
  • es-abstract/2019/ToNumber
  • es-abstract/2019/ToNumber.js
  • es-abstract/2019/ToObject
  • es-abstract/2019/ToObject.js
  • es-abstract/2019/ToPrimitive.js
  • es-abstract/2019/ToPropertyKey
  • es-abstract/2019/ToString
  • es-abstract/2019/ToString.js
  • es-abstract/2019/ToUint32
  • es-abstract/2019/Type
  • es-abstract/2019/Type.js
  • es-abstract/2019/WeekDay
  • es-abstract/2019/YearFromTime
  • es-abstract/2020/AddEntriesFromIterable
  • es-abstract/2020/AdvanceStringIndex
  • es-abstract/2020/ArraySpeciesCreate
  • es-abstract/2020/Call
  • es-abstract/2020/Call.js
  • es-abstract/2020/CreateDataProperty
  • es-abstract/2020/CreateDataPropertyOrThrow
  • es-abstract/2020/CreateHTML
  • es-abstract/2020/CreateIterResultObject
  • es-abstract/2020/CreateMethodProperty
  • es-abstract/2020/DefinePropertyOrThrow
  • es-abstract/2020/DeletePropertyOrThrow
  • es-abstract/2020/FlattenIntoArray
  • es-abstract/2020/Get
  • es-abstract/2020/GetMethod
  • es-abstract/2020/GetMethod.js
  • es-abstract/2020/GetSubstitution
  • es-abstract/2020/HasOwnProperty
  • es-abstract/2020/HasProperty
  • es-abstract/2020/IsArray
  • es-abstract/2020/IsCallable
  • es-abstract/2020/IsInteger
  • es-abstract/2020/IsInteger.js
  • es-abstract/2020/IsRegExp
  • es-abstract/2020/IterableToList
  • es-abstract/2020/LengthOfArrayLike
  • es-abstract/2020/OrdinaryObjectCreate
  • es-abstract/2020/OrdinarySetPrototypeOf
  • es-abstract/2020/PromiseResolve
  • es-abstract/2020/RegExpExec
  • es-abstract/2020/RequireObjectCoercible
  • es-abstract/2020/RequireObjectCoercible.js
  • es-abstract/2020/SameValueZero
  • es-abstract/2020/Set
  • es-abstract/2020/SpeciesConstructor
  • es-abstract/2020/SpeciesConstructor.js
  • es-abstract/2020/ToBoolean
  • es-abstract/2020/ToInteger
  • es-abstract/2020/ToInteger.js
  • es-abstract/2020/ToLength
  • es-abstract/2020/ToLength.js
  • es-abstract/2020/ToNumber
  • es-abstract/2020/ToNumber.js
  • es-abstract/2020/ToObject
  • es-abstract/2020/ToPrimitive
  • es-abstract/2020/ToPrimitive.js
  • es-abstract/2020/ToPropertyKey
  • es-abstract/2020/ToString
  • es-abstract/2020/ToString.js
  • es-abstract/2020/ToUint32
  • es-abstract/2020/Type
  • es-abstract/2020/Type.js
  • es-abstract/5/CheckObjectCoercible
  • es-abstract/5/SameValue
  • es-abstract/GetIntrinsic
  • es-abstract/GetIntrinsic.js
  • es-abstract/es2015
  • es-abstract/es2017
  • es-abstract/es2018
  • es-abstract/es2019
  • es-abstract/es2019.js
  • es-abstract/es5
  • es-abstract/es6
  • es-abstract/es7
  • es-abstract/helpers/OwnPropertyKeys
  • es-abstract/helpers/callBind
  • es-abstract/helpers/callBind.js
  • es-abstract/helpers/callBound
  • es-abstract/helpers/getInferredName
  • es-abstract/helpers/getIteratorMethod
  • es-abstract/helpers/getOwnPropertyDescriptor
  • es-abstract/helpers/getOwnPropertyDescriptor.js
  • es-abstract/helpers/getProto
  • es-abstract/helpers/getSymbolDescription
  • es-abstract/helpers/isFinite
  • es-abstract/helpers/isNaN
  • es-abstract/helpers/setProto

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (es-abstract) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

es-abstract Version Badge

dependency status dev dependency status License Downloads

npm badge

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.