ele ainda e usado no ECMAScript 6? e qual a funcionalidade dele? percebo que em alguns objetos printados no console existe uma palavra prop e também já vi em alguns códigos objeto.protype, desde já agradeço pela explicação
ele ainda e usado no ECMAScript 6? e qual a funcionalidade dele? percebo que em alguns objetos printados no console existe uma palavra prop e também já vi em alguns códigos objeto.protype, desde já agradeço pela explicação
Oi Alisson, o Prototype no básico é um objeto implícito que está disponível para todas as funções construtoras do Javascript. Na real, é um atributo da função Object, de onde as funções herdam.
Mesmo na ES6, sim, ele ainda existe por que, caso não, as aplicações em javascript parariam de funcionar.
Diretamente, pouco se é usado o prototype hoje em dia, é mais comum de se ver isso em códigos ES5... O ES6 ainda usa, porém, isso é abstraído do nosso código. Lembre-se, o código ES6 por mais que ainda pareça muito diferente do ES5, o funcionamento base por baixo dos panos é praticamente o mesmo.
Vou deixar o link aqui pra você se aprofundar mais: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/prototype
A funcionalidade dele basicamente é compartilhar funções e propriedades de forma a não duplicar essas coisas em vários objetos do código. É muito utilizado para herança e compartilhamento de dados e comportamento entre objetos.
Completando a resposta do Wanderson, quando você usa extends
para herdar de outra classe na verdade o interpretador esta utilizando por debaixo dos panos prototype. A sintaxe extends
é apenas um açúcar sintático para ela.
Sobre o __proto__
você deve ignorá-lo. Não faz parte da especificação e a forma para você descobrir o prototype de uma instância é através de Object.getPrototypeOf(Object)
. É mais verboso, mas é a maneira especificada.
Sucesso e bom estudo meu aluno!
Muito obrigado Wanderson e Prof. Flavio pelo tempo e pela excelente resposta :)
Alison, quando fizer sentido, marca sempre o post que resolveu sua dúvida como solução, assim a gente sabe que foi efetivo na resposta e facilita outros alunos irem direto para a solução do problema. Tá bem?
Abraço!