Typescript语言规范中提到:
每个JavaScript程序也是TypeScript程序
现在考虑下面的代码:
var i = 5;
i = "five";
这段代码是一个完全有效的JavaScript代码,可以在不出错的情况下执行。但它不是一个有效的TypeScript代码,编译失败。
我的理解与引用语句和代码示例之间显然存在不匹配。
请您澄清一下,在我给出的例子中,是什么使得规范语句成立。
更新
为了回应这个说法不反映程序的有效性的论点,我们可以这样重述:
每个JavaScript程序也是一个有效或无效的TypeScript程序
或者
并非每个JavaScript程序都是一个有效的TypeScript程序
如果作者想表达后者,为什么他们没有这样说呢?
var i: any = 5;
,只是这个语句在语言更新时没有被更新吗?(或者我记错了。) - Ry-