Ao programar em JavaScript, há situações em que é necessário integrar as funcionalidades de um objeto com uma função definida pelo usuário. Além disso, aplicando alguma funcionalidade adicional ao objeto criado ou sua propriedade para aplicar alguma operação sem alterá -lo. Nesses casos, o JavaScript fornece o “
chamar()","
aplicar()", e "
vincular()”Métodos para lidar com essas situações.
Este artigo discutirá as diferenças entre os métodos Call (), Aplicar () e Bind ().
Javascript Call () vs Aplicação () vs Bind () Métodos
Call () Método
O "chamar()”O método chama uma função com um contexto especificado. Este método pode ser aplicado para integrar as funcionalidades de um objeto e uma função acessando a função com o objeto referido como parâmetro de uma função, juntamente com os parâmetros passados simultaneamente.
Sintaxe
Ligue para (Ref, Args)
Na sintaxe dada:
- ““Ref”Refere -se ao valor a ser utilizado como“esse”Ao chamar uma função.
- ““args”Aponta para os argumentos para a função.
Exemplo
Vamos seguir o exemplo abaixo do momento:
No trecho de código acima, execute as seguintes etapas:
- Crie um objeto com a propriedade declarada.
- Depois disso, declare uma função chamada “sumnum ()”Tendo os parâmetros declarados.
- Em sua definição, use “esse”Para se referir à propriedade do objeto criado e adicionar os parâmetros colocados a ele.
- Finalmente, acesse a função e o “chamar()”Método, referindo -se ao objeto criado e ao parâmetro aprovado. Isso adicionará os valores dos parâmetros ao valor da propriedade do objeto.
Saída
Na saída acima, pode -se observar que a soma dos valores da propriedade do objeto e os parâmetros de passagem são retornados.
Método Aplicar ()
Este método é idêntico ao “chamar()”Método. A diferença nesse método é que ele leva os parâmetros de função na forma de uma matriz.
Sintaxe
Aplicar (Ref, Array)
Na sintaxe acima:
- ““Ref”Refere -se ao valor a ser utilizado como“esse”Ao chamar uma função.
- ““variedade”Indica os argumentos na forma de uma matriz com que a função será chamada.
Exemplo
Vamos dar uma olhada no exemplo a seguir:
No trecho de código da Adobe, execute as seguintes etapas:
- Repita as etapas discutidas no exemplo do “chamar()”Método para criar um objeto, declarar uma função com parâmetros e referir -se ao objeto.
- Finalmente, acesse a função definida contendo o objeto referido como seu primeiro parâmetro e os valores de parâmetros da função na forma de uma matriz.
- Isso resultará da mesma forma em retornar a soma do objeto e passar os valores dos parâmetros.
Saída
Da saída acima, é evidente que a soma desejada é devolvida.
Método bind ()
O "vincular()”O método não executa uma função imediatamente, mas retorna uma função que pode ser executada posteriormente em.
Sintaxe
Bind (ref, args)
Na sintaxe acima:
- ““Ref”Corresponde ao valor a ser aprovado como“esse”Parâmetro para a função de destino.
- ““args”Refere -se aos argumentos para a função.
Exemplo
Vamos seguir o exemplo dado para entender claramente:
No código JavaScript acima, execute as seguintes etapas:
- Lembre -se das etapas discutidas para criar um objeto e definir uma função com os parâmetros declarados.
- Na próxima etapa, aplique o “vincular()”Método e repita o mesmo procedimento para conter o objeto criado e os valores de parâmetros passados para retornar a soma.
- Aqui, armazene as funcionalidades executadas na etapa anterior em um “em linha”Função chamada“updfunção ()”Que pode ser utilizado mais tarde também.
Saída
Na saída acima, é evidente que, ao chamar o declarado "em linha”Função, a soma é retornada como resultado.
Exemplo: aplicar chamada (), aplicar () e amar () com o mesmo objeto e função
Neste exemplo, aplique os métodos discutidos em um único objeto com a ajuda de uma função.
Vamos seguir o exemplo abaixo do dado passo a passo:
Nas linhas de código acima, execute as seguintes etapas:
- Reviva as etapas discutidas para criar um objeto, declarando uma função com os parâmetros declarados.
- No código adicional, acesse a função definida a cada método discutido.
- Pode -se observar que todos os três métodos são aplicados de maneira diferente junto com a função, mas produzem a mesma saída, como evidente abaixo.
Saída
Na saída acima, pode -se observar que todos os métodos fornecem a mesma saída.
Conclusão
O "chamar()" e "aplicar()”Os métodos podem ser implementados para integrar as funcionalidades de um objeto e uma função, passando os valores de parâmetros de maneira simples e na forma de uma matriz, respectivamente. O "vincular()”O método também pode ser aplicado da mesma forma. A funcionalidade adicional neste método é que ele é armazenado em uma função a ser utilizada posteriormente. Este tutorial explicou as diferenças entre os métodos Call (), Apply () e Bind ().