Blame view

node_modules/es5-ext/array/of/shim.js 568 Bytes
f7563de62   Palak Handa   first commit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
  'use strict';
  
  var isFunction = require('../../function/is-function')
  
    , slice = Array.prototype.slice, defineProperty = Object.defineProperty
    , desc = { configurable: true, enumerable: true, writable: true, value: null };
  
  module.exports = function (/*…items*/) {
  	var result, i, l;
  	if (!this || (this === Array) || !isFunction(this)) return slice.call(arguments);
  	result = new this(l = arguments.length);
  	for (i = 0; i < l; ++i) {
  		desc.value = arguments[i];
  		defineProperty(result, i, desc);
  	}
  	desc.value = null;
  	result.length = l;
  	return result;
  };