Diferença entre métodos e funções em JavaScript

Diferença entre métodos e funções em JavaScript
Em JavaScript, funções e métodos podem ser facilmente misturados e errados. No entanto, a realidade está longe disso. Para resumir, uma função é um bloco de código escrito para servir a um propósito específico. As funções não estão vinculadas a nenhum objeto específico.

Por outro lado, os métodos são funções ligadas a um objeto. Vamos analisar cada um por um.

Funções em JavaScript

Como mencionado acima, uma função nada mais é do que um bloco de código incluído dentro de suportes encaracolados e usado para cumprir uma função específica ou executar uma tarefa específica. Trabalhar com uma função geralmente consiste em duas partes, a primeira é a definição de função e a segunda é a chamada de função.

Na definição da função, uma função é criada com o função Palavra -chave, dado um nome e um bloco de código para executar uma tarefa como:

função greetuser ()
// O bloco de código vai aqui

Este snippet de código acima é criar uma função que seja nomeada como GreetUser (). A segunda parte do trabalho com função é o Chamada de função. A chamada de função é essencialmente a linha em que chamamos a função usando seu nome para executar a tarefa escrita dentro dela:

greetuser ();

Esta chamada de função não requer nenhuma palavra -chave especial. Um exemplo da função seria:

função greetuser ()
console.log ("Olá e bem -vindo ao linuxhint!");

greetuser ();

Após a execução deste snippet de código, você obterá a seguinte saída no terminal:

A saudação foi impressa no terminal

Métodos em JavaScript

Os métodos são funções, eles são escritos para captar um objetivo específico e também possuem duas partes que incluem a definição da função e a chamada de função (chamada de definição de método e chamada de método). No entanto, os métodos são definidos dentro de um objeto, que os diferencia das funções normais. Pegue as seguintes linhas para mostrar a definição do método:

var sitebot =
GreetUser: function ()
console.log ("Olá e bem -vindo ao linuxhint!");
,
;

Neste trenó de código, há um objeto nomeado como SiteBot que contém um atributo Greetuser que é definido como uma função () com algumas tarefas dentro dela. Agora isso Greetuser é chamado de método do SiteBot objeto.

Para chamar um método, a chamada deve usar um operador de ponto com o nome de seu objeto e, no final, você coloca os parênteses como

SiteBot.greetuser ();

O trecho de código completo é como:

var sitebot =
GreetUser: function ()
console.log ("Olá e bem -vindo ao linuxhint!");
,
;
SiteBot.greetuser ();

Ao executar o trecho de código mencionado acima, a seguinte saída é exibida no terminal:

Como você pode ver, o objeto sitebot imprimiu as saudações no terminal. Agora, tente chamar isso GreetUser () Método como você chamaria uma função normal usando o operador DOT ou o nome do objeto:

greetuser ();

Você obterá a seguinte saída no terminal:

A partir desta saída, fica claro que você não pode chamar métodos como você chamaria uma função normal.

Conclusão

Funções e métodos são bem diferentes em seu trabalho porque as funções não são vinculadas por nenhum objeto, enquanto os métodos são vinculados pelo objeto em que são definidos. Os métodos são essencialmente funções limitadas a um objeto específico. As chamadas de função não requerem palavras -chave ou operador especial, enquanto as chamadas de método requerem o nome do objeto e o operador DOT. Ambos são escritos para executar um propósito particular.