首页 > web前端 > js教程 > 为什么箭头函数在使用块声明时需要显式返回?

为什么箭头函数在使用块声明时需要显式返回?

Linda Hamilton
发布: 2024-12-18 09:54:18
原创
310 人浏览过

Why Do Arrow Functions Need Explicit Returns When Using Block Declarations?

为什么没有块声明的箭头函数必须显式返回值

ES6 中引入的箭头函数简化了 JavaScript 函数的语法。但是,在返回值方面,它们的行为可能与常规函数不同。

考虑以下带有块声明的箭头函数(用大括号括起来):

const f = arg => { arg.toUpperCase(); };
登录后复制

调用此函数不返回值,导致 undefined 被打印到控制台:

console.log(f("testing")); // undefined
登录后复制

与常规函数不同,带有块声明的箭头函数不要隐式返回块表达式的结果。相反,需要显式返回语句来指定返回值。因此,箭头函数应写为:

const f = arg => { return arg.toUpperCase(); }; // Explicit 'return' statement
登录后复制

或者,可以简洁地声明箭头函数(不带块大括号)。在这种情况下,隐式返回箭头后面的表达式的结果:

const f = arg => arg.toUpperCase();
登录后复制

示例:

const f1 = arg => { return arg.toUpperCase(); }; // With explicit 'return'
console.log(f1("testing"));

const f2 = arg => arg.toUpperCase(); // Concise arrow function
console.log(f2("testing"));
登录后复制

f1 和 f2 都返回大写字符串“TESTING”。通过了解带块声明和不带块声明的箭头函数之间的区别,您可以确保您的箭头函数返回预期值。

以上是为什么箭头函数在使用块声明时需要显式返回?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板