Encerramento e cadeia de protótipo em js

Fecho

  1. O que é um fechamento

    As funções são funções aninhadas, e a função interna pode acessar as variáveis ​​da função externa, é chamada de fechamento

 (function(){
          var a = 1;
          function fn() {
              var b = 2;
              var sum = b + a;
              console.log(sum); 
          }  
          fn();
        })()

- A função fn chama a variável a na função externa

  1. A função dos
    encerramentos, a maior função dos encerramentos é ocultar variáveis. Uma das principais características dos encerramentos é que as funções internas podem sempre acessar os parâmetros e as variáveis ​​declaradas na função externa em que estão localizadas, mesmo após o retorno da função externa, com base nisso O recurso javaScript pode perceber a existência de variáveis ​​privadas

  2. As vantagens dos fechamentos
    podem isolar o escopo e não causarão poluição global das variáveis

  3. Desvantagens: os
    fechamentos permanecem na memória por um longo tempo, resultando em vazamentos de memória.
    Solução: redefina as variáveis ​​de fechamento expostas como nulas

Cadeia de protótipo

Quando chamamos um método ou propriedade de um objeto, vamos primeiro encontrar o método na instância do objeto, se houver, vamos chamá-lo, se não, usaremos o proto (protótipo) do objeto para pesquisar, se nós localizá-lo, iremos executar a chamada. Ele irá pesquisar no protótipo do objeto criado, ou seja, no protótipo do objeto. Se for encontrado, a chamada será executada. Caso contrário, continuará a pesquisa no protótipo .proto. Caso contrário, vá para prototype.proto.prototype para pesquisar até que a consulta seja encontrada. null é o topo da cadeia de protótipos

  • proto:
    protótipo explícito
  • Protótipo:
    protótipo implícito Quando um objeto é usado como uma função construtora, ele será usado como o protótipo da função recém-construída

Acho que você gosta

Origin blog.csdn.net/t5_5_5_5_5_7_7/article/details/109722811
Recomendado
Clasificación