_baseCreate.js
572 Bytes
define(['./isObject', './_setup'], function (isObject, _setup) {
// 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.
function baseCreate(prototype) {
if (!isObject(prototype)) return {};
if (_setup.nativeCreate) return _setup.nativeCreate(prototype);
var Ctor = ctor();
Ctor.prototype = prototype;
var result = new Ctor;
Ctor.prototype = null;
return result;
}
return baseCreate;
});