我正在应用JSDoc注释:
/**
* @param {number} millis
* @param {function} callback
* */
function sleep(millis, callback) {
setTimeout(function() {
callback();
}, millis);
}
那么什么工具会告诉下面的行有错误?
sleep('aaa', 'sdsdsd');
JSHint 是否了解 JSDoc 类型注释?如何在 Eclipse 中启用此类支持?
jshint 不知道 jsdoc 注释。不过,您可以考虑使用 eslint 并为其编写一个插件来对函数调用执行类型检查。根据项目的设置方式,您可能最终必须预先解析代码以将注释提取到 eslint 规则将使用的规则文件中。
免责声明,我是 tern.java 的作者。
我建议您安装 tern.java 1.0.0-SNAPSHOT。它提供了使用 JSDoc 注释验证 JavaScript 文件的功能。这是此问题示例的屏幕截图:
// @ts-check
您希望检查它。
jsconfig.json
的文件,其中包含以下内容:
{ "compilerOptions": { "checkJs":true } }