O novo em JavaScript é um açúcar de sintaxe. Para aqueles que aprenderam idiomas orientados a objetos, como C ++, Java e C#, eles acham que há uma diferença entre classes e objetos no JS. Não há classe no JS, tudo é um objeto, que é mais completo que Java.
O processo de novo é realmente criar um novo objeto, definir o protótipo da nova imagem como o protótipo da função do construtor. No processo de usar o novo, um total de 3 objetos participou da colaboração. A função do construtor é o primeiro objeto, o objeto de protótipo é dois e um novo objeto vazio é o terceiro objeto. O retorno final é um objeto vazio, mas esse objeto vazio não é vácuo, mas já contém uma referência ao protótipo (__proto__)
As etapas são as seguintes:
(1) Crie um objeto vazio obj
(2) Deixe o membro __proto__ (ou seja, não possui esse membro da propriedade) apontar para o objeto de membro do protótipo do construtor
(3) Use aplique para chamar a função do construtor, e isso está vinculado ao objeto vazio OBJ.
(4) retornar objeto vazio obj
Também é perfeitamente possível escrever uma função em vez de usar o novo. O código de amostra é o seguinte:
função new_object (foo) {var obj = {}; obj .__ proto __ = foo.prototype; obj .__ proto __. construtor = foo; foo.apply (obj, argumentos) retornar obj;}O artigo acima discute brevemente o princípio do novo operador em JavaScript. É todo o conteúdo que compartilho com você. Espero que você possa lhe dar uma referência e espero que você possa apoiar mais o wulin.com.