何时应该在ES6箭头函数中使用return语句?
P粉771233336
P粉771233336 2023-08-22 13:20:02
0
2
646
<p>新的ES6箭头函数说在某些情况下,<code>return</code>是隐式的:</p> <blockquote> <p>该表达式也是该函数的隐式返回值。</p> </blockquote> <p>在哪些情况下我需要在ES6箭头函数中使用<code>return</code>?</p>
P粉771233336
P粉771233336

全部回复(2)
P粉258083432

我理解这个经验法则...

候选项为:

// 平方根
value => Math.sqrt(value)

// 求和
(a,b) => a+b

对于其他操作(需要多行代码的情况,需要显式返回值)

P粉012875927

Jackson在一个类似的问题中部分地回答了这个问题

我要补充一下block的定义:

示例

// 返回:undefined
// 解释:一个空的带有隐式返回的块
((name) => {})() 

// 返回:'Hi Jess'
// 解释:没有块意味着隐式返回
((name) => 'Hi ' + name)('Jess')

// 返回:undefined
// 解释:块内需要显式返回,但是缺少了
((name) => {'Hi ' + name})('Jess')

// 返回:'Hi Jess'
// 解释:块内有显式返回
((name) => {return 'Hi ' + name})('Jess') 

// 返回:undefined
// 解释:一个包含单个标签的块。没有显式返回。
// 更多信息:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/label
((name) => {id: name})('Jess') 

// 返回:{id: 'Jess'}
// 解释:隐式返回表达式 ( ),其求值为一个对象
((name) => ({id: name}))('Jess') 

// 返回:{id: 'Jess'}
// 解释:块内有显式返回对象
((name) => {return {id: name}})('Jess')
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板