gpt4 book ai didi

javascript - ES6 中匿名函数的函数名称

转载 作者:行者123 更新时间:2023-11-28 18:10:08 26 4
gpt4 key购买 nike

在 ECMAScript 6 中,所有函数都有适当的名称:

console.log((function fn() {}).name); // 'fn'

console.log((new Function()).name); // 'anonymous'

但是如果是匿名函数:

console.log((function () {}).name); // (empty string)

您能否解释一下,为什么在第三个示例中我们无法获得输出'anonymous'

最佳答案

ECMA-262 明确声明使用 Function 构造函数创建的函数的名称设置为“匿名”,请参阅 Runtime Semantics: CreateDynamicFunction(constructor, newTarget, kind, args)步骤 29。

但是,使用没有可选名称的函数表达式创建的函数(或以其他方式绑定(bind)名称)的情况并非如此,在这种情况下,名称必须保留为空字符串。

控制台试图提供帮助,但在这种情况下,将“”更改为“匿名”可能会产生误导。

关于javascript - ES6 中匿名函数的函数名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41798680/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com