如何正确记录扩展String对象原型的函数?例如:
if (!String.prototype.format) {
/**
* @name String.prototype.format
* Replaces symbols like {0}, {1} in a string with the values from the arguments.
*/
String.prototype.format = function () {
var args = arguments;
return this.replace(/{(\d+)}/g, function (match, number) {
return typeof args[number] != 'undefined'
? args[number]
: match
;
});
};
}
我在使用和不使用@function和@name注释的情况下尝试过。
Visual Studio 2017并没有开始显示带有函数描述的工具提示,因为它在添加JSDoc注释时通常会这样做。
答案 0 :(得分:0)
这是否有效
if (!String.prototype.format) {
/**
* @namespace String
*/
/**
* @memberof String
* @name String#format
* @function
* Replaces symbols like {0}, {1} in a string with the values from the arguments.
*/
String.prototype.format = function () {
var args = arguments;
return this.replace(/{(\d+)}/g, function (match, number) {
return typeof args[number] != 'undefined'
? args[number]
: match
;
});
};
}