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)
这让我觉得这是一种鲜为人知的简写符号.
bugzilla 上相关问题的评论者指出,这是匿名函数命名约定的一部分。
尤其,
a/b- 内部b的var a = function() { var b = function() {}; }a<- 标记a“贡献者”或基本上是一些辅助函数,该函数有助于a通过在其中匿名命名的函数。
所以a/<()意味着在 的体中声明了一个匿名函数a。