我特指的是JavaScript匿名函数,但这可能与其他语言有关。我喜欢在我的脚本中使用JSDoc符号,因为我知道其他人迟早会被黑客攻击。当我有非常复杂的匿名函数时,人们如何记录它以便Eclipse和其他了解JSDoc或JavaDoc符号的IDE获取它?
/**
* Blah Blah blah
*
* @param Object Blah blah blah
* @return Blah Blah Blah
* @type Object
*/
function foo(this) {
......
this.bar = function () { ... complex code .....};
......
return obj;
}
由于
答案 0 :(得分:10)
理想情况下,匿名函数应该简短并执行简单的任务。所以......包含它的外部函数应该提供足够的文档。
如果不是这种情况,您应该将匿名函数提取到命名函数中,然后正确记录它。
答案 1 :(得分:1)
这不是一个真正的匿名函数。它有一个名字。名称是“bar”,或者更具体地说,是“foo.bar”。根据我的思维方式,这实际上是一个函数文字。根据我的思维方式,真正的匿名函数是一个真正没有名称的函数,比如另一个函数的参数:
var intervalId = setTimeout(function() { // statements }, 1000);
现在,根据David Flanagan在 Javascript:The Definitive Guide 中的说法,匿名函数是“使用Function()构造函数创建的函数”。不过,他在那里对冲了他的赌注,因为他继续说明这些功能只是“有时”被称为匿名。
为什么我在这里提出这个问题?因为我认为如果你有一个名字的东西,它实际上不能被称为匿名。我认为关于Javascript函数的术语“匿名”充其量是模棱两可的,至少应该由某个人澄清。
答案 2 :(得分:0)
使其不是匿名的。
我发现记录某些东西的最好方法是不要。我的意思是我使用好的变量/函数名称和清除代码作为我的文档。
所以在这种情况下,我只是创建一个静态函数来创建匿名,因此我可以给这个静态函数一个好名字。它