heyujie
2021-06-07 8f8155aa4c83f7c2577ac123add550766b6a7ce3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
"use strict";
 
var setPrototypeOf = require("../object/set-prototype-of")
  , isExtensible   = require("./_is-extensible");
 
module.exports = (function () {
    var SubArray;
 
    if (isExtensible) return require("./_sub-array-dummy");
 
    if (!setPrototypeOf) return null;
    SubArray = function () {
        var arr = Array.apply(this, arguments);
        setPrototypeOf(arr, SubArray.prototype);
        return arr;
    };
    setPrototypeOf(SubArray, Array);
    SubArray.prototype = Object.create(Array.prototype, {
        constructor: { value: SubArray, enumerable: false, writable: true, configurable: true }
    });
    return SubArray;
})();