You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为扩展的原生对象方法添加JSDoc描述以在VS Code中显示?

为原生对象扩展方法添加JSDoc并在VS Code中显示提示

直接给String.prototype这类原生对象的扩展方法加JSDoc,VS Code的智能提示可能无法正确关联到原生类型上。要解决这个问题,需要结合JSDoc的类型扩展语法,告诉VS Code的类型系统原生对象新增了该方法:

实现步骤

  1. 用JSDoc扩展原生对象的接口,在接口中定义新增方法并添加注释
  2. 实现原生对象原型上的方法

示例代码

// 扩展String类型的接口,声明新增方法
/**
 * @interface
 * @extends String
 */
interface String {
    /**
     * 将字符串首字母转为大写,其余字符保持原样
     * @returns {string} 首字母大写后的新字符串
     */
    capitalize(): string;
}

// 实现capitalize方法
String.prototype.capitalize = function () {
    return this.charAt(0).toUpperCase() + this.slice(1);
};

console.log('foo'.capitalize()); // Foo

补充说明

  • 如果项目未启用TypeScript,需在VS Code设置中开启javascript.implicitProjectConfig.checkJs(路径:文件→首选项→设置→搜索该选项),确保VS Code能识别接口扩展的类型信息
  • 也可在方法实现上添加@this标注,进一步明确上下文类型:
/**
 * 将字符串首字母转为大写
 * @this {string}
 * @returns {string} 首字母大写后的新字符串
 */
String.prototype.capitalize = function () {
    return this.charAt(0).toUpperCase() + this.slice(1);
};

内容的提问来源于stack exchange,提问作者fjexe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 12:01:20