12345678910111213141516171819 |
- import isObject from './isObject.js';
- import { nativeCreate } from './_setup.js';
- // Create a naked function reference for surrogate-prototype-swapping.
- function ctor() {
- return function(){};
- }
- // An internal function for creating a new object that inherits from another.
- export default function baseCreate(prototype) {
- if (!isObject(prototype)) return {};
- if (nativeCreate) return nativeCreate(prototype);
- var Ctor = ctor();
- Ctor.prototype = prototype;
- var result = new Ctor;
- Ctor.prototype = null;
- return result;
- }
|