javascript - 打字稿中的减法返回未定义
问题描述
我是打字稿的新手,并尝试执行以下代码片段:-
class TestClass
{
public t: number = 10;
public TestClass()
{
this.t = this.t - 1;
console.log(this.t);
}
}
var obj = new TestClass();
这是游乐场的链接
该片段(当转译为 JavaScript 时)在 chrome 开发人员控制台中打印未定义,而我希望它打印 9。
有人可以帮我解释打字稿和javascript中的行为吗
解决方案
似乎您错过了调用该类的方法:
obj.TestClass(); // <---should be called.
Typescript 与 Java 不同,在 Java 中,您必须将构造函数名称与类名称相同。在 Typescript/Javascript 中,您必须使用constructor
关键字。所有其他函数都被视为类成员。
推荐阅读
- c# - 开发具有两个源和一个目标的 SSIS 自定义组件
- javascript - 如何在我的 html.erb 中调用 JS 函数并将 ruby 变量作为参数传递?
- ruby - 为什么在 ruby 命令提示符下无法识别 touch 命令
- r - 检查向量中的值是否包含在不同数据集中的值范围内
- r - R维恩图问题
- python - Python 底图:使用 rgb 文件中的颜色表,而不是预定义的 Matplotlib 颜色表
- python - 如何在服务器上运行 python 脚本?
- c - 如何在不区分大小写的情况下在字符串中查找单词?
- javascript - 用 django 提供 npm 包的最佳方式?
- c++ - 函数重载和继承(为什么这不起作用?)