gpt4 book ai didi

javascript - JSDoc/JavaScript Language Service : how to annotate an expression?(如何转换)

转载 作者:行者123 更新时间:2023-11-29 21:04:18 27 4
gpt4 key购买 nike

我正在使用 Visual Studio Code,JavaScript 语言服务配置为:

{
"compilerOptions": {
"checkJs": true
}
}

而且我找不到一种方法来转换一些东西,就像这里:

Error message

上面的例子应该在 Closure Compiler 中工作(未验证),如 documented here .但是我找不到 JavaScript 语言服务的等效语法。

我还尝试了以下更简单的语句,它也不起作用:

let castedWindow = (/** @type {any} */(window));  // castedWindow: Window (I want `any`)

我问的是如何进行强制转换,以及是否有人碰巧知道语法的记录位置(或者,如果没有记录,那么它是如何工作的)。

我问的是可能的吗?

感谢您的宝贵时间!

最佳答案

截至TypeScript 2.5 , 支持 type assertion/cast syntax in checkJs/@ts-check mode已经介绍过了。

Type assertion/cast syntax in checkJs/@ts-check mode

TypeScript 2.5 introduces the ability to assert the type of expressions when using plain JavaScript in your projects. The syntax is an /** @type {...} */ annotation comment followed by a parenthesized expression whose type needs to be re-evaluated. For example:

var x = /** @type {SomeType} */ (AnyParenthesizedExpression);

关于javascript - JSDoc/JavaScript Language Service : how to annotate an expression?(如何转换),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44817856/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com