Javascript Object.create ()

O método JavaScript Object.create () cria um novo objeto usando o protótipo de um determinado objeto.

A sintaxe do create()método é:

 Object.create(proto, propertiesObject)

O create()método, sendo um método estático, é chamado usando o Objectnome da classe.

Create () Parâmetros

O create()método inclui:

  • proto - O objeto que deve ser o protótipo do objeto recém-criado.
  • propertiesObject (opcional) - Um objeto cujas próprias propriedades enumeráveis ​​especificam descritores de propriedade a serem adicionados ao objeto recém-criado. Essas propriedades correspondem ao segundo argumento de Object.defineProperties().

Valor de retorno de create ()

  • Retorna um novo objeto com o objeto de protótipo especificado e propriedades.

Observação: se proto não for nullou Object, TypeErrorserá lançado.

Exemplo: usando Object.create ()

 let Animal = ( isHuman: false, sound: "Unspecified", makeSound() ( console.log(this.sound); ), ); // create object from Animal prototype let snake = Object.create(Animal); snake.makeSound(); // Unspecified // properties can be created and overridden snake.sound = "Hiss"; snake.makeSound(); // Hiss // can also directly initialize object properties with second argument let properties = ( isHuman: ( value: true, ), name: ( value: "Jack", enumerable: true, writable: true, ), introduce: ( value: function () ( console.log(`Hey! I am $(this.name).`); ), ), ); human = Object.create(Animal, properties); human.introduce(); // Hey! I am Jack.

Resultado

Hiss não especificado Ei! Eu sou Jack.

Leitura recomendada: Javascript Object isPrototypeOf ()

Artigos interessantes...