summaryrefslogtreecommitdiff
path: root/deps/npm/node_modules/node-gyp/node_modules/path-array/node_modules/array-index/node_modules/es6-symbol/node_modules/es5-ext/array/#/splice/shim.js
blob: a8505a2ce2a201e73c174ab702f209477dabe29a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
'use strict';

var isPlainArray = require('../../is-plain-array')

  , isArray = Array.isArray, splice = Array.prototype.splice
  , forEach = Array.prototype.forEach;

module.exports = function (start, deleteCount/*, …items*/) {
	var arr = splice.apply(this, arguments), result;
	if (!this || !isArray(this) || isPlainArray(this)) return arr;
	result = new this.constructor(arr.length);
	forEach.call(arr, function (val, i) { result[i] = val; });
	return result;
};