UNPKG

array.prototype.splice

Version:

An ES5 spec-compliant `Array.prototype.splice` shim/polyfill/replacement that works as far down as ES3.

26 lines (20 loc) 685 B
'use strict'; var define = require('define-properties'); var RequireObjectCoercible = require('es-object-atoms/RequireObjectCoercible'); var callBound = require('call-bound'); var implementation = require('./implementation'); var getPolyfill = require('./polyfill'); var polyfill = getPolyfill(); var shim = require('./shim'); var $slice = callBound('Array.prototype.slice'); // eslint-disable-next-line no-unused-vars var bound = function splice(array, start, deleteCount) { RequireObjectCoercible(array); return polyfill.apply(array, $slice(arguments, 1)); }; define(bound, { getPolyfill: getPolyfill, implementation: implementation, shim: shim }); module.exports = bound;