diff options
Diffstat (limited to 'node_modules/core-js/modules/esnext.array.at.js')
| -rw-r--r-- | node_modules/core-js/modules/esnext.array.at.js | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/node_modules/core-js/modules/esnext.array.at.js b/node_modules/core-js/modules/esnext.array.at.js new file mode 100644 index 0000000..0342f85 --- /dev/null +++ b/node_modules/core-js/modules/esnext.array.at.js @@ -0,0 +1,20 @@ +'use strict'; +var $ = require('../internals/export'); +var toObject = require('../internals/to-object'); +var toLength = require('../internals/to-length'); +var toInteger = require('../internals/to-integer'); +var addToUnscopables = require('../internals/add-to-unscopables'); + +// `Array.prototype.at` method +// https://github.com/tc39/proposal-relative-indexing-method +$({ target: 'Array', proto: true }, { + at: function at(index) { + var O = toObject(this); + var len = toLength(O.length); + var relativeIndex = toInteger(index); + var k = relativeIndex >= 0 ? relativeIndex : len + relativeIndex; + return (k < 0 || k >= len) ? undefined : O[k]; + } +}); + +addToUnscopables('at'); |
