mirror of
https://github.com/nodejs/node.git
synced 2025-05-18 22:22:58 +00:00

PR-URL: https://github.com/nodejs/io.js/pull/2286 Reviewed-By: Roman Reiss <me@silverwind.io>
24 lines
606 B
JavaScript
24 lines
606 B
JavaScript
'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;
|
|
}());
|