之前一直使用 Aptana Studio, 优点 可自动识别 变量函数并提供自动完成功能, Ctrl+shift+F 快速格式化, 可编译为一行.

但是有个问题, 自己写的JS库, 并不能被完全识别.

想到了 VS2010 + VA , 这个是可以完全识别并提示, 但还是有个问题,  文件扩展名必须为*.js.

找了下, 发现SPKET 

下载 http://www.spket.com/download.html

当前版本1.6.23 http://www.agpad.com/downloads/spket-1.6.23.jar

下载后, cmd  执行 java -jar 路径\spket-1.6.23.jar 

注意路径不能包含中文.

安装完成后 运行,  window -> Preferences ->Spket ->javascript Profiles - > New

新建 profile 然后 AddLibrary 选择 Common 

然后 AddFile 添加自己的 JSDOC文件.

在 ProFile Explorer 选择自己的profile即可实现自动完成代码 (Code completion)功能

命令名描述 
/***
@param @argument 指定参数名和说明来描述一个函数参数 

@returns 描述函数的返回值 
@author 指示代码的作者 
@deprecated 指示一个函数已经废弃,而且在将来的代码版本中将彻底删除。要避免使用这段代码 
@see 创建一个HTML链接,指向指定类的描述 
@version 指定发布版本 
@requires 创建一个HTML链接,指向这个类所需的指定类 
@throws @exception 描述函数可能抛出的异常的类型 
{@link} 创建一个HTML链接,指向指定的类。这与@see很类似,但{@link}能嵌在注释文本中 
@fileoverview 这是一个特殊的标记。如果在文件的第一个文档块中使用这个标记,则指定该文档块的余下部分将用来提供这个文件的概述 
@class 提供类的有关信息,用在构造函数的文档中 
@constructor 明确一个函数是某个类的构造函数 
@type 指定函数的返回类型 
@extends 指示一个类派生了另一个类。JSDoc通常自己就可以检测出这种信息,不过,在某些情况下则必须使用这个标记 
@private 指示一个类或函数是私有的。私有类和函数不会出现在HTML文档中,除非运行JSDoc时提供了--private命令行选项 
@final 指示一个值是常量值。要记住JavaScript无法真正保证一个值是常量 
@ignore JSDoc忽略有这个标记的函数 
*/

简单示例:

1 /** 
2 * @description 加法运算 
3 * @param {Num} num1 加数 
4 * @param {Num} num2 被加数 
5 * @return {Num} result 结果 
6 */ 
7 function add(num1,num2){ 
8 return num1 + num2; 
9 }