在Google Closure中,如果初始化Array某个特定@type {Array.<type>}内容,我可以确定Google Closure是否会确认数组内容?
这是一个小测试用例.在我看来,一个人{Array.<string>}偷偷通过{Array.<number>}支票,虽然a {string}被同一支票正确阻止.我对GC有点新意,这是我的错误吗?
我已将此粘贴到Google Closure服务中,我只显示了两个预期错误中的一个(2013年9月12日).我双测试这对我的本地jar文件(最新,v20130823)与ADVANCED_OPTIMIZATIONS和warning_level VERBOSE.它仍然看起来像{Array.<string>}偷偷摸摸.
提前感谢您的意见.
// ==ClosureCompiler==
// @output_file_name default.js
// @compilation_level ADVANCED_OPTIMIZATIONS
// @warning_level VERBOSE
// @language ECMASCRIPT5
// ==/ClosureCompiler==
/**
no warning, as expected:
@type {Array.<number>}
*/
var a = [1,2,3,4];
/**
warning! Type mismatch as expected:
@type {Array.<number>}
*/
var b = 'mismatch'; // {string} does not match {Array.<number>}
/**
no warning, …Run Code Online (Sandbox Code Playgroud)