Movatterモバイル変換


[0]ホーム

URL:


  1. Glossário do MDN Web Docs
  2. Função First-class

Esta página foi traduzida do inglês pela comunidade.Saiba mais e junte-se à comunidade MDN Web Docs.

View in EnglishAlways switch to English

Função First-class

Entende-se que uma linguagem de programação temFunção First-class quando suas funções são tratadas como qualquer outra variável. Por exemplo, numa linguagem desse tipo, a função pode ser passada como argumento pra outras funções, ser retornada por outra função e pode ser atribuída como um valor à uma variável.

Exemplo | Atribuir uma função à uma variável

JavaScript

js
const foo = function () {  console.log("foobar");};// Chamar a função usando a variávelfoo();

Nós atribuímos umaFunção Anônima à umaVariável, então usamos a variável pra chamar a função adicionando parênteses() no fim.

Nota:Mesmo se sua função for nomeada, você pode usar o nome da variável pra chamá-la. Nomeá-la será útil quando for debugar seu código.Mas não afetará a maneira que à chamamos.

Exemplo | Passar uma função como um Argumento

JavaScript

js
function sayHello() {  return "Hello, ";}function greeting(helloMessage, name) {  console.log(helloMessage() + name);}// Passar `sayHello` como um argumento pra função `greeting`greeting(sayHello, "JavaScript!");

Nós estamos passando a funçãosayHello() como um argumento pra funçãogreeting(), isso explica como estamos tratando a função como umvalor.

Nota:A função que passamos como um argumento pra outra função, chamou umaFunção Callback.sayHello é uma Função Callback.

Exemplo | Retornar uma função

JavaScript

js
function sayHello() {  return function () {    console.log("Hello!");  };}

Neste exemplo; Precisamos retornar uma função de outra função -Podemos retornar uma função porque tratamos função em JavaScript como umvalor.

Nota:Uma função que retorna uma função é chamada deHigher-Order Function

De volta ao nosso exemplo; Agora, precisamos chamar a funçãosayHello e aFunção anônima retornada. Existem duas maneiras para fazermos isso:

1- Usando uma variável

js
const sayHello = function () {  return function () {    console.log("Hello!");  };};const myFunc = sayHello();myFunc();

Dessa maneira, ela retorna a mensagemHello!.

Nota:Você tem que usar outra variável. Se você fosse chamarsayHello diretamente, ela retornaria a função em sisem chamar a função retornada.

2- Usando parênteses duplo

js
function sayHello() {  return function () {    console.log("Hello!");  };}sayHello()();

Estamos usando parênteses duplo()() pra chamar também a função retornada.

Saiba mais

Conhecimento geral

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp