"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Quando as funções de seta do ES6 exigem uma instrução `return` explícita?

Quando as funções de seta do ES6 exigem uma instrução `return` explícita?

Publicado em 2025-01-27
Navegar:754

When Do ES6 Arrow Functions Require an Explicit `return` Statement?

Quando um retorno explícito é necessário nas funções de seta do ES6?

No ES6, as funções de seta retornam implicitamente a expressão dentro de seu corpo conciso, eliminando a necessidade da palavra-chave return em cenários com uma única expressão. No entanto, há casos específicos em que uma instrução return explícita ainda é necessária.

Quando usar return com funções de seta

  • Quando um bloco é Presente: Uma função de seta com chaves (um bloco) perde seu comportamento de retorno implícito. Uma instrução return explícita deve ser usada para especificar o valor de retorno da função. Exemplo:
() => { console.log('Hello'); } // Implicit return, logs 'Hello'
() => { return 'Hello'; } // Explicit return, returns 'Hello'
  • Sintaxe ambígua: Usar colchetes sem um retorno explícito pode criar ambiguidade sintática. Por exemplo, a seguinte função de seta:
(name) => {id: name}

Retorna indefinido porque as chaves indicam um bloco, interpretando id como um rótulo em vez de um nome da propriedade.

  • Expressões de múltiplas linhas: Quando a expressão de uma função de seta abrange várias linhas, pode ser confuso lembrar se o retorno foi incluído. Para evitar erros, use return explicitamente para garantir o valor de retorno correto.

Exemplos

Retorno implícito:

(name) => name   '!'; // Implicit return, returns 'Jess!'

Retorno explícito:

(name) => { return name   '!'; } // Explicit return, returns 'Jess!'

Em resumo, se uma função de seta contiver um bloco, tiver sintaxe ambígua ou abranger várias linhas, uma instrução de retorno explícita será necessária para especificar o valor de retorno da função. Caso contrário, a expressão no corpo da função de seta será retornada implicitamente.

Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3