javascript - JSDoc:在 "for...of"循环中为变量声明@type

标签 javascript types ecmascript-6 annotations jsdoc

我可以使用 JSDoc @type 注释为变量 one 声明类型吗?

/** @type some.type */
for (let one of many) {
    ...
}

类似于 PHPDoc 注释的东西:

/** @var \Some\Type $one */
foreach ($many as $one) {

}

最佳答案

是的,你可以。您只需将类型声明移到括号内,变量之前:

for (/** @type {SomeType} */ const one of many) {
    // ...
}

这很好用,尽管我通常更喜欢指定 many 的类型。例如:

/** @type {Number[]} */
const many = [1, 2, 3, 4];

然后 one 的类型将被自动推断。

P.S.:注意我将 one 声明为 const。不管人们怎么猜,您都可以将 for..of 循环变量声明为常量!

关于javascript - JSDoc:在 "for...of"循环中为变量声明@type,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45071969/

相关文章:

javascript - React 中的键盘快捷键,react-hotkeys 库

haskell - 改变函数类型的固定性(->)?

java - 特定类型会影响 ArrayList 的性能吗?

ios - Swift 中的类型检查和验证

javascript - 真的有必要使用react-bootstrap提供的组件吗?

ES6 中的 Javascript 类,如何将它们导入到其他 js 文件和 html 文件中?

javascript - 是否允许多次重复使用 pg QueryFile

javascript - Ember CLI + Ember 数据 + 简单验证 : authorize gets not called

php - 调试 AJAX 到 PHP 调用的最佳方法是什么?

javascript - Jquery onClick 显示信息?