在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
Typescript中类的定义与继承与后端开发语言java/C#等非常像,实现起来非常方便,而且代码便于阅读。 用Typescript写较大项目时是非常有优势的。 /** * BaseClass */ class BaseClass { constructor(name:string,age:number) { this.name=name; this.age=age; } name:string; age:number; sayName():void{ console.log(this.name); } } /** * SubClass */ class SubClass extends BaseClass { constructor(name:string,age:number,job:string ) { super(name,age); this.job=job; } job:string; sayJob():void{ console.log(this.job); } } var subClass=new SubClass('张三',18,'Coder'); subClass.sayJob(); subClass.sayName(); console.log(subClass); 编译后生成的纯原生Javascript,也是非常优雅的。 var __extends = (this && this.__extends) || function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; function __() { this.constructor = d; } __.prototype = b.prototype; d.prototype = new __(); }; /** * BaseClass */ var BaseClass = (function () { function BaseClass(name, age) { this.name = name; this.age = age; } BaseClass.prototype.sayName = function () { console.log(this.name); }; return BaseClass; })(); /** * SubClass */ var SubClass = (function (_super) { __extends(SubClass, _super); function SubClass(name, age, job) { _super.call(this, name, age); this.job = job; } SubClass.prototype.sayJob = function () { console.log(this.job); }; return SubClass; })(BaseClass); var subClass = new SubClass('张三', 18, 'Coder'); subClass.sayJob(); subClass.sayName(); console.log(subClass);
|
请发表评论