为什么jQuery不使用JSDoc?

hlf*_*ing 31 javascript documentation jquery standards jsdoc

或者他们和它只是不在源头?我真的很想得到一些东西,它会阻止js-doc-toolkit在每次分析jQuery时吓坏我.这也意味着我无法使用jQuery作为依赖项正确记录任何代码,而不至少放置一些样板js-doc块,这些块无法正确记录jQuery的结构.我不知道有一个共同的解决方案吗?我试过谷歌搜索,顺便说一句.

Nic*_*ver 30

因为我不能代表jQuery团队为什么不使用JSDoc ,所以会在黑暗中拍摄.JSDoc,至少在我最后一次检查时,没有任何干净的方法来支持方法重载(或参数转换......无论你想在这里提供什么名称),jQuery都会使用它.我们来看一个简单的例子.animate():

.animate({ height: 5 })
.animate({ height: 5 }, 100)
.animate({ height: 5 }, 100, "linear")
.animate({ height: 5 }, 100, "linear", func)
.animate({ height: 5 }, 100, func)
.animate({ height: 5 }, func)
.animate({ height: 5 }, { duration: 100, queue: false })
.animate({ height: 5 }, { duration: 100, easing: "linear" })
.animate({ height: 5 }, { duration: 100, easing: "linear", complete: func })
Run Code Online (Sandbox Code Playgroud)

所有这些都是有效的,因为根据需要检查和移动参数类型以支持尽可能的任何重载场景......这只是混淆了JSDoc的地狱,没有干净的方法将这些可选参数添加到文档中.如果这已经改变了,请纠正我,但最后我看了(可能是团队最后一次看了)这仍然是这样的.

另一个潜在的考虑因素是如何在jQuery运行时生成一些方法,例如(许多方法中的一个),几乎所有的事件处理程序快捷方式在循环生成,其他方法的行为类似......你会如何记录这些?JSDoc生成在这里真的不好用.

  • JSDoc还有`@ variation`标签,可用于记录调用方法的不同方式. (2认同)

小智 7

不知道为什么他们不添加JSDoc评论,但谷歌闭包家伙似乎保留了他们需要的高级优化的闭包编译器的"外部"

http://code.google.com/p/closure-compiler/source/browse/trunk/contrib/externs/jquery-1.6.js?r=1152