Qual é a diferença entre chamada e ligação?

Qual é a diferença entre chamada e ligação?
Ao anexar vários recursos a um site ou na página da web, pode haver um requisito para relacionar as funcionalidades com base em um atributo específico. Por exemplo, relacionar conteúdo idêntico em termos de código e funcionalidades no mesmo local. Em tais situações, o “chamar()" e "vincular()”Métodos em JavaScript Assist no final do desenvolvedor.

Este blog discutirá a diferença entre os métodos Call () e Bind () em JavaScript.

Qual é a dissimilaridade entre os métodos Call () e Bind () em JavaScript?

Em JavaScript, o “chamar()”O método chama um método com um objeto do proprietário como seu argumento. Ele se liga “esse”Valor para a função e executa a mesma função.

Sintaxe do método Call () em JavaScript

document = função.Ligue para (argn)

Na sintaxe dada:

  • ““função”Refere -se à função que será executada.
  • ““Argn”Corresponde aos argumentos que precisam ser passados ​​para a função.

Considerando que a "vincular()”O método permite que o objeto busque um método de outro objeto. Este método se liga “esse”Valor para a função e retorna uma nova função.

Sintaxe do método Bind () em JavaScript

função.bind (thisarg [, arg1 [, arg2 [,…]]])

Na sintaxe acima:

  • ““thisarg”É o valor da função alvo.
  • ““Arg1" e "Arg2”São os argumentos da função.

Exemplo 1: Como usar o método Call () em JavaScript?

Neste exemplo, o método declarado pode ser utilizado para invocar uma função e associar um objeto específico a ele:


functionMyfunction ()
retornar "este é um simples" + this.primeiro nome + "" + este.último nome + ".";

const element1 =
primeiro nome: "web",
LastName: "Page"

const element2 =
primeiro nome: "web",
LastName: "Site"

documento.getElementById ("Demo").INNERHTML = MyFunction.ligue (elemento1);

No código acima:

  • Em primeiro lugar, inclua um “”Elemento para conter a saída resultante.
  • Agora, no código JavaScript, defina uma função chamada “MyFunction ()”.
  • Em sua definição, objeto associado “esse" com o "chaves”De um determinado elementos.
  • Depois disso, crie dois objetos chamados “Element1" e "Element2”, Respectivamente, na forma de“valor chavePares.
  • Na próxima etapa, aplique o “getElementById ()”Método para acessar o criado“div”.
  • Além disso, associe o “chamar()”Método com a função declarada. Como parâmetro, passe o objeto anterior de modo que a função chama o objeto específico, e suas propriedades são anexadas.
  • Por fim, utilize o “Innerhtml”Propriedade para exibir o resultado no“div”.

Saída

Na saída acima, pode -se observar que as funcionalidades da função e do objeto são anexadas.

Exemplo 2: como usar o método bind () em javascript?

Neste exemplo, o “vincular()”O método pode ser aplicado para ligar um objeto específico com a chave de um objeto específico especificado como uma função:


const object1 =
MEM1: "HTML",
MEM2: "CSS",
MyFunction: function ()
retornar "isto é" + este.Mem1 + "&" + este.MEM2;


const object2 =
MEM1: "JavaScript",
MEM2: "JQuery",

Deixe Message = Object1.MyFunction.bind (object2);
documento.getElementById ("Demo").inerhtml = message ();

Aqui nesta linhas de código:

  • Em primeiro lugar, no código HTML, inclua o “”Elemento com o ID declarado chamado“demonstração”.
  • No código JS, crie uma variedade de objetos chamados “objeto1”Tendo os valores declarados na forma de“valor chavePares.
  • Observe que "MyFunction”Refere -se à chave do objeto, e a função é definida como seu valor.
  • Na definição da função, consulte as chaves do objeto via “esse”Objeto.
  • Depois disso, da mesma forma, crie outro objeto com as propriedades declaradas.
  • Agora, consulte a chave do objeto associado "MyFunction”E anexe o“vincular()”Método de modo que o objeto específico no parâmetro do método é integrado à função.
  • Finalmente, aplique o “getElementById ()”Método para buscar o“div”Elemento e exibir o resultado através do“Innerhtml" propriedade.

Saída

Os resultados acima exibem que o requisito desejado é atendido.

Conclusão

Em JavaScript, a principal diferença entre o chamar()" e "vincular()”Métodos é que o método Call () liga“esse”Valor da função e executa a função, enquanto o“vincular()”O método liga“esse”Valor para a função e retorna uma nova função. Este blog discutiu as principais diferenças entre os métodos Call () e Bind em JavaScript com a ajuda dos exemplos.