Javascript 此变量的typedef不为';不要发出警告
我想为一个数字生成一个警告,如果给它分配了一个字符串。所以,我想typedef的闭包可以帮我做到这一点。我尝试了以下方法-Javascript 此变量的typedef不为';不要发出警告,javascript,google-closure-compiler,google-closure,Javascript,Google Closure Compiler,Google Closure,我想为一个数字生成一个警告,如果给它分配了一个字符串。所以,我想typedef的闭包可以帮我做到这一点。我尝试了以下方法- var Widget = function() { /** @typedef {number} */ this.size = null; }; new Widget().size = "kaboom!" 当我使用编译它时,它不会抛出警告或错误。我做错了什么?和/或我应该使用什么其他工具?在闭包编译器服务中将优化设置为“高级”,以捕获这些警
var Widget = function()
{
/** @typedef {number} */
this.size = null;
};
new Widget().size = "kaboom!"
当我使用编译它时,它不会抛出警告或错误。我做错了什么?和/或我应该使用什么其他工具?在闭包编译器服务中将优化设置为“高级”,以捕获这些警告。对于您的示例,您仍然看不到任何内容(当然,您会看到一些,但不是您所期望的),因为typedef用于定义自定义类型。此外,还需要对构造函数进行注释。在高级模式下运行以下示例,您将看到警告。我将使用
@type
,而不是为简单的数字之类的东西生成typedef,但是这个示例是为了向您展示typedef的正确用法
/** @typedef {number} */
var customType;
/** @constructor */
var Widget = function()
{
/** @type {customType} */
this.size = null;
};
new Widget().size = "kaboom!"