首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >何时应该在ES6箭头函数中使用return语句

何时应该在ES6箭头函数中使用return语句
EN

Stack Overflow用户
提问于 2015-03-06 06:56:42
回答 6查看 83.6K关注 0票数 189

新的ES6 arrow functions表示,return在某些情况下是隐含的:

表达式也是该函数的隐式返回值。

在什么情况下需要将return与ES6箭头函数一起使用?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2015-03-06 06:56:42

杰克逊在一个类似的问题中有部分answered this

隐式返回,但仅当没有块时才返回。

当一行代码扩展为多行,并且程序员忘记添加return.

  • Implicit返回时,这将导致错误。
  • 在语法上不明确。(name) => {id: name}返回对象{id: name}...对吗?不对。它返回undefined。这些大括号是显式的块。id:是一个标签。

我将在此添加block的定义

块语句(或其他语言中的复合语句)用于对零个或多个语句进行分组。该块由一对大括号分隔。

示例

代码语言:javascript
复制
// returns: undefined
// explanation: an empty block with an implicit return
((name) => {})() 

// returns: 'Hi Jess'
// explanation: no block means implicit return
((name) => 'Hi ' + name)('Jess')

// returns: undefined
// explanation: explicit return required inside block, but is missing.
((name) => {'Hi ' + name})('Jess')

// returns: 'Hi Jess'
// explanation: explicit return in block exists
((name) => {return 'Hi ' + name})('Jess') 

// returns: undefined
// explanation: a block containing a single label. No explicit return.
// more: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/label
((name) => {id: name})('Jess') 

// returns: {id: 'Jess'}
// explanation: implicit return of expression ( ) which evaluates to an object
((name) => ({id: name}))('Jess') 

// returns: {id: 'Jess'}
// explanation: explicit return inside block returns object
((name) => {return {id: name}})('Jess') 
票数 304
EN

Stack Overflow用户

发布于 2017-01-12 07:43:23

我明白这条经验法则...

对于有效转换的函数(参数的一行操作),返回是隐式的。

候选对象包括:

代码语言:javascript
复制
// square-root 
value => Math.sqrt(value)

// sum
(a,b) => a+b

对于其他操作(需要块的多个一行程序,返回必须是显式的

票数 24
EN

Stack Overflow用户

发布于 2018-07-06 17:46:20

这里还有另一个案例。

在React中编写函数组件时,可以使用括号包装隐式返回的JSX。

代码语言:javascript
复制
const FunctionalComponent = () => (
  <div>
    <OtherComponent />
  </div>
);
票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28889450

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档