ann*_*123 11 javascript typescript
我是 TypeScript 和 Javascript 类的新手!
我正在学习 TypeScript,在那里我创建了一些像这样简单的东西
class User {
name: string;
email: string;
constructor(name: string, email: string) {
this.name = name;
this.email = email;
}
}
let newUser = new User("Rohit Bhatia", "iro@gmail.com");
Run Code Online (Sandbox Code Playgroud)
这是给我的等价物
var User = /** @class */ (function () {
function User(name, email) {
this.name = name;
this.email = email;
}
return User;
}());
var newUser = new User("Rohit Bhatia", "iro@gmail.com");
Run Code Online (Sandbox Code Playgroud)
现在,我有三个问题
什么是@class(或 js 中的一般@)? var User = /** @class */ (function () {
类也在 javascript 中?那么为什么不打字稿将其转换为 JS 类
在 TS 课上我们可以做这样的事情
类用户{名称:字符串;电子邮件:字符串;
但是在 Javascript 中我们不能做这样的事情吗?或者JS类和TS类有什么区别
回答您的问题:
@Class 是一种注释/注释,与标准无关。
在 ES5(假设是“经典 javascript”)中没有类,但是有一种方法可以模拟它们的行为,当 Typescript 代码被转换为 ES5 时也是如此。与新规范相比,这种编写“类”(记住它们不存在)的方法有点困难。
也见答案2。还:
从现代 Javascript ECMAScript 6 规范 (ES6) 开始,现在 Javascript 有了类。Typescript 是 ES6 的一种进化。在 ES6 中,它会是这样的:
class User {
constructor(name, email) {
this.name = name;
this.email = email;
}
}
var newUser = new User('Rohit Bhatia', 'iro@gmail.com');
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5200 次 |
| 最近记录: |