什么是开发人员控制台中的"功能a/<()"?

Giu*_*llo 11 javascript notation

在Firefox中使用Developer Console时,我尝试这样做:

var a = b => c => c;
Run Code Online (Sandbox Code Playgroud)

然后这个:

a(1)
Run Code Online (Sandbox Code Playgroud)

我期望结果是function()(对应于c => c),但显示的是:

function a/<()
Run Code Online (Sandbox Code Playgroud)

这个表达的意思是什么?它显然不是合法的Javascript,因为它们既不是函数名的有效字符/也不<是.

对于函数使用常规表示法也是如此var a = function(b) { return function(c) { return c; } }.

这是一个截图:

在此输入图像描述

编辑:我尝试了以下内容

var a = b => c => d => d;
a(1)
Run Code Online (Sandbox Code Playgroud)

结果是

a/</<()
Run Code Online (Sandbox Code Playgroud)

这让我觉得这是一种鲜为人知的简写符号.

Giu*_*llo 3

bugzilla 上相关问题的评论者指出,这是匿名函数命名约定的一部分。

尤其

  • a/b- 内部bvar a = function() { var b = function() {}; }
  • a< - 标记a“贡献者”或基本上是一些辅助函数,该函数有助于a通过在其中匿名命名的函数。

所以a/<()意味着在 的体中声明了一个匿名函数a