我有 C# 背景,我们有fields和properties.
JavaScript 支持类,我正在学习它们,但立即遇到了障碍。
以下代码片段工作正常,但我的问题是关于 2 个“字段”mass和moons. JavaScript 正在创建这些对象,但我想知道是否可以显式创建它们。
class Planet {
constructor (mass, moons) {
this.mass = mass;
this.moons = moons || 0;
}
reportMoons () {
txt.innerHTML = "I have " + this.moons + " moons.";
}
}
Run Code Online (Sandbox Code Playgroud)
代码来源
所以不知何故(我相信由于变量没有定义,它应该自动成为一个全局变量,但由于它是类的一部分,我怀疑它也没有这样做),JavaScript知道mass和moons。我宁愿看到这些变量被显式声明(就像在 C# 中一样),但我无法在类中添加var,const或。let以下内容无效
class Planet {
constructor (mass, moons) {
}
let _mass;
const _val = 5;
}
Run Code Online (Sandbox Code Playgroud)
原因是我认为查找定义的属性比查看构造函数更容易(可能是因为我习惯了 C#)。
我知道 JavaScript 不是 C#,但是...是否可以使其更详细一点?
附:我已经在使用 TypeScript 了。我并不寻求什么语言更合适的建议,我热衷于学习 JavaScript,这是一种奇怪而美妙的方式:)
| 归档时间: |
|
| 查看次数: |
960 次 |
| 最近记录: |