Resumo de Função ECMAScript
- Página anterior Sentença switch
- Próxima página Objeto arguments
O que é uma função?
A função é um grupo de instruções que podem ser executadas em qualquer lugar e a qualquer momento.
A função é o núcleo do ECMAScript.
A função é declarada da seguinte forma: palavra-chave function, nome da função, um grupo de parâmetros e o código a ser executado entre parênteses.
A sintaxe básica da função é assim:
function functionName(arg0, arg1, ... argN) { statements }
Por exemplo:
function sayHi(sName, sMessage) { alert("Hello " + sName + sMessage); }
Como chamar uma função?
A função pode ser chamada pelo nome mais os parâmetros entre parênteses, se houver vários parâmetros.
Se você quiser chamar a função do exemplo acima, você pode usar o seguinte código:
sayHi("David", " Nice to meet you!")
Chamar a função sayHi() acima gerará uma janela de aviso. Você podeExperimente este exemplo pessoalmente.
Como uma função retorna valor?
A função sayHi() não retorna valor, mas não é necessário declará-la especificamente (como no Java usando void).
Mesmo que a função tenha um valor, não é necessário declará-lo explicitamente. A função apenas precisa usar o operador return seguido do valor a ser retornado.
function sum(iNum1, iNum2) { return iNum1 + iNum2; }
O seguinte código atribui o valor retornado pela função sum a uma variável:
var iResult = sum(1,1); alert(iResult); // Saída "2"
Outro conceito importante é que, como no Java, a função para de executar o código imediatamente após a execução da sentença return. Portanto, o código após a sentença return não será executado.
Por exemplo, na seguinte código, a janela alert não será exibida:
function sum(iNum1, iNum2) { return iNum1 + iNum2; alert(iNum1 + iNum2); }
Um único função pode ter várias sentenças return, conforme mostrado a seguir:
function diff(iNum1, iNum2) { if (iNum1 > iNum2) { return iNum1 - iNum2; } else { return iNum2 - iNum1; } }
A função acima é usada para retornar a diferença entre dois números. Para fazer isso, é necessário subtrair o número menor do maior, portanto, a sentença if decide qual return executar.
Se a função não tiver valor de retorno, pode chamar o operador return sem parâmetros para sair da função a qualquer momento.
Por exemplo:
function sayHi(sMessage) { if (sMessage == "bye") { return; } alert(sMessage); }
Neste código, se sMessage for igual a "bye", a caixa de mensagem de aviso nunca será exibida.
Notas:Se a função não tiver valor de retorno explícito ou chamar uma sentença return sem parâmetros, o valor que ela realmente retorna é undefined.
- Página anterior Sentença switch
- Próxima página Objeto arguments