首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Google中的匿名函数表达式

Google中的匿名函数表达式
EN

Stack Overflow用户
提问于 2016-09-01 10:33:26
回答 1查看 1.6K关注 0票数 1

我正在使用谷歌Chrome版本52 64位.我发现如果我使用匿名函数表达式。

代码语言:javascript
复制
//  Anonymous function expression 
var expressionFunc = function(){
    return true;
};

变量expressionFunc将保存指定的匿名函数,但它也在此函数中添加一个名称属性expressionFunc。因此,如果我在控制台中执行expressionFunc.name,它将给我expressionFunc

据我所知,这个匿名函数表达式应该保持匿名,并且变量引用的函数不应该包含函数的name属性中的变量名。

为什么chrome为匿名函数分配名称属性?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-01 11:38:17

本页:

Objects/Function/name

说这个

实现ES6函数的浏览器可以从其语法位置推断匿名函数的名称。例如:

代码语言:javascript
复制
var f = function() {};
console.log(f.name); // "f"

那一页上没有什么特别的解释。

此页

http://www.2ality.com/2015/09/function-names-es6.html

说这个

关于名称,箭头函数类似于匿名函数表达式:

代码语言:javascript
复制
     const func = () => {};
     console.log(func.name); // func

从现在开始,每当您看到匿名函数表达式时,您都可以假设箭头函数的工作方式是相同的。

https://stackoverflow.com/a/37488652/1048572上的答案(由@bergi引用)相当全面,并指向规范中的源代码。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39269192

复制
相关文章

相似问题

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