flq*_*flq 7 javascript typescript tsc
我有以下示例:
class Uncle {
constructor(public name : string) { }
talk() {
return "Hello my name is " + name;
}
}
let p : Uncle = new Uncle("Jo");
console.log(p.talk());
Run Code Online (Sandbox Code Playgroud)
对于某些变量名称,typescript(现在版本2.1.4)不会抱怨它们没有在您的程序中定义(在方法talk中,名称正在使用而没有这个.).name就是其中之一.
如果我将变量重命名为,比方说,firstName编译器正确地抱怨......
错误TS2663:找不到名称'firstName'.你的意思是实例成员'this.firstName'吗?
同样适用于例如窗口,显然假设存在.
我的问题是:
它不会抱怨的原因name是全局命名空间中有一个名为 name 的变量。
在开发人员工具中打开控制台并编写name并按回车键,您将收到:"".
更多资源:
所有全局变量都可以在不定义的情况下使用。
为了删除所有全局定义,您可以,例如在您的 中tsconfig.json,将"libs"选项设置为空数组。这将删除所有全局变量。
| 归档时间: |
|
| 查看次数: |
236 次 |
| 最近记录: |