Creates an object that inherits from a prototype. If a properties object is given, its own enumerable string keys are assigned onto the result. Since Lodash 2.3.0.
Pass the object and path or keys shown below. Check whether the helper mutates or returns a new object.
Syntax
Call _.create. Start with this line.
Lodash
_.create(prototype, [properties])
Call
What it does
_.create(prototype, [properties])
Primary signature.
_.create(object)
Work with an object’s keys, values, or paths.
Prefer import create from "lodash/create" when you want a smaller bundle.
Library declarations
Lodash
_.create(prototype, [properties])
Parameters
Parameter
Description
prototype
Required. Object to inherit from (or null)
properties
Optional. Own enumerable string keys to assign
Return Value
Return Value
Description
*
New object linked to prototype
Lodash Examples
Example 1 — Official: Prototypal Inheritance
Set a constructor prototype that inherits from another.
Lodash
function Shape() {
this.x = 0;
this.y = 0;
}
function Circle() {
Shape.call(this);
}
Circle.prototype = _.create(Shape.prototype, {
constructor: Circle
});
var circle = new Circle();
circle instanceof Circle;
// → true
circle instanceof Shape;
// → true
_.create is a Lodash Object helper (since 2.3.0). It runs anywhere Lodash 4.x runs — modern browsers (CDN or bundle) and Node.js / Bun / Deno with npm install lodash.
✓ Stable · Lodash 2.3.0+
_.create()
Available in [email protected] full builds and the lodash/create modular import. Works in evergreen browsers and current Node LTS when Lodash is installed.
100%With Lodash 4.x
Google ChromeSupported · Desktop & Mobile
Full support
Mozilla FirefoxSupported · Desktop & Mobile
Full support
Apple SafariSupported · macOS & iOS
Full support
Microsoft EdgeSupported · Chromium
Full support
Internet ExplorerNo native support · Use a polyfill
Polyfill
OperaSupported · Modern versions
Full support
Samsung InternetSupported · Android
Full support
BunSupported · JavaScript runtime
Supported
DenoSupported · JavaScript runtime
Supported
Node.jsSupported · Server runtime
Supported
Android WebViewSupported · Modern WebView
Full support
_.createLodash 2.3.0+
Bottom line: Safe for production once Lodash is loaded. Prefer import create from "lodash/create". Native Object.create is fine when you need descriptor control.
Frequently Asked Questions
_.create(prototype, [properties]) creates an object that inherits from prototype. If properties is given, its own enumerable string keys are assigned onto the new object.
Same prototype link. Object.create's second argument expects property descriptors; _.create takes a plain object of values (like _.assign).
No. Only own enumerable string-keyed properties are copied — same rule as _.assign.
An object with no prototype — useful for dictionary maps without Object.prototype keys.
No. The new object links to the prototype. Reads may walk up the chain; writes create own properties.
Use import create from "lodash/create" or require("lodash/create"). Full build: import _ from "lodash" then _.create.