The Object create() method

🆕 🔜 Check this out if you dream of running a solo Internet business 🏖️

Find out all about the JavaScript create() method of the Object object

Introduced in ES5.

Creates a new object, with the specified prototype.


const newObject = Object.create(prototype)


const animal = {}
const dog = Object.create(animal)

The newly create object will inherit all the prototyope object properties.

You can specify a second parameter to add new properties to the object, that the prototype lacked:

const newObject = Object.create(prototype, newProperties)

where newProperties is an object of objects that define each property.


const animal = {}
const dog = Object.create(animal, {
  breed: {
    value: 'Siberian Husky'
console.log(dog.breed) //'Siberian Husky'

I didn’t just say breed: 'Siberian Husky' but I had to pass a property descriptor object, defined at the beginning of this page.

Object.create() is often used in combination with Object.assign():

const dog = Object.assign(Object.create(animal), {
  bark() {