范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

一份不可多得的TypeScript学习笔记

  Hi,我是前端人,今日与君共勉!本篇文章主要介绍 typeScript 中类的定义、类的继承、类中成员修饰符等内容。
  typeScript 中的类与 ES6 中的类非常相似,如果不知道 ES6 中的类,建议先学习下 ES6 中的 class 。本篇文章重点介绍 typeScript 中的类定义、继承以及修饰符。1、类的定义
  类描述了所创建的对象共同的属性和方法。typeScript 支持面向对象的所有特性,比如类、接口等。
  在 typeScript 中定义类的时候,使用 class 关键字,类名首字母使用大写,类可以包含以下三个模块:字段 - 字段是类里面声明的变量,表示与对象有关的属性。构造函数 - 类实例化时自动调用,可以为实例化的对象分配内存。方法 - 方法为对象要执行的某种操作。
  定义属性的时候,需要添加属性类型,构造函数中的参数也需要加类型,引用任何一个类的成员的时候都用 this ,this 关键字表示当前类实例化的对象。使用 new 关键字来实例化对象,并初始化它。如示例:class Web{  workTime: string  constructor(n:string) {   this.workTime = n  }  showWork(){   return "搬砖的前端"  } } let qq = new Web("五年") console.log(qq.showWork()); console.log(qq.workTime);
  编译以上代码,得到的 js 代码如下:"use strict"; class Web {  constructor(n) {   this.workTime = n;  }  showWork() {   return "搬砖的前端";  } } let qq = new Web("五年"); console.log(qq.showWork()); console.log(qq.workTime);2、类的继承
  typeScript 支持继承类,即可以在创建类的时候继承一个已存在的类,类继承的时候使用 extends 关键字,基于类的程序设计中一种最基本的模式是允许使用继承来扩展现有的类。比如:class Dirnks{  name: string  constructor(n: string) {   this.name = n  }  save(m: string) {   console.log(`${this.name}饮料应该${m}`);  } } class Soda extends Dirnks{  constructor(n: string) {   super(n)  } } let kele = new Soda("可乐") kele.save("冷藏")
  上述示例是一个最基本的类继承,其中 Soda 继承了 Dirnks 的属性和方法,其中 Soda 是一个派生类,也叫做子类,Dirnks 是一个基类,也叫超类或父类。
  派生类包含了一个构造函数,构造函数必须调用 super() ,会执行基类的构造函数。需要注意的是:在子类构造函数里访问 this 的属性之前,一定要先调用 super ,这是 typeScript 强制执行的一条重要规则。
  如果父类和子类都包含某一方法时,方法名相同,但是具体执行内容不同的时候,该执行哪一个方法呢?
  修改上述实例,给子类也添加一个方法,代码如下:class Dirnks{  name: string  constructor(n: string) {   this.name = n  }  save(m: string) {   console.log(`${this.name}饮料应该${m}`);  } } class Soda extends Dirnks{  constructor(n: string) {   super(n)  }  save() {   return "存储方法"  } } let kele = new Soda("可乐") console.log(kele.save());
  编译以上代码啊,得到的 js 代码如下:"use strict"; class Dirnks {  constructor(n) {   this.name = n;  }  save(m) {   console.log(`${this.name}饮料应该${m}`);  } } class Soda extends Dirnks {  constructor(n) {   super(n);  }  save() {   return "存储方法";  } } let kele = new Soda("可乐"); console.log(kele.save());
  此时会执行子类中的方法。其原理是,类继承后,子类可以对父类的方法进行重新定义,这个过程称之为方法的重写。
  typeScript 中子类只能继承一个父类,虽然不支持继承多个类,但是支持多重继承。如下:class One{  name: string  constructor(n: string) {   this.name = n  }  show() {   return "展示"  } } class Two extends One{  constructor(n:string) {   super(n)  } } class Three extends Two{  constructor(n: string) {   super(n)  } } let three = new Three("剁成") console.log(three.show());3、修饰符
  在 typeScript 中,可以使用访问控制符来保护对类、变量、方法和构造函数的访问。typeScript 支持 3 种不同的访问权限,分别为:public(默认) - 公有,表示共享的属性和方法。可以在任何地方被访问。protected - 受保护,表示属性和方法被保护,可以被自身以及子类访问,不能在类外面使用。private - 私有,只能被其定义所在的类访问。readonly - 只读,只读属性必须在声明时或构造函数里初始化。
  理解 public
  在上边类中的成员定义的时候,没有明确使用任何修饰符,默认的就是 public ,所以可以将上面的类改写为:class HH{  public name: string  public constructor(n: string) {   this.name = n  } } let h = new HH("HH") console.log(h.name);
  使用 public 之后,对上面的应用并没有任何影响。
  它的特点:被它标记的成员在类的里面、子类里面、类外面都可以访问到。
  理解 protected
  类中添加 protected 修饰符来修饰成员时,将上述实例的 public 修饰符修改为 protected 如下:class HH{  protected name: string  constructor(n: string) {   this.name = n  } } let h = new HH("HH") console.log(h.name); // 此处报错,提示 属性"name"受保护,只能在类 HH 及子类中访问
  它的特点:被它标记的成员在类的里面、子类里面能使用,但是在类的外面不能使用。
  理解 privateclass HH{  private name: string  constructor(n: string) {   this.name = n  } } class H extends HH{  constructor(n: string) {   super(n)  }  show() {   console.log(this.name); // 报错  } } let h = new H("HH") console.log(h.name);  // 报错 h.show()
  上面的示例报错,提示:属性"name"为私有属性,只能在类"HH"中访问。
  它的特点:被它标记的成员不能再声明它的类的外部访问。

PDD大牛五年心血总结437页网络协议笔记,总算把网络协议讲清楚了10个网络工程师里面,10个都说自己学过网络协议,9个说自己懂网络协议。但真正面试的时候,能回答出相关问题的,可能只有两三个。比如TCP协议跟UDP协议有什么区别?HTTPS协议的谈谈智能音箱这几年,互联网巨头们纷纷进入智能音箱领域,表面看只是一个音箱,背后的市场有多大,巨头们的真正的目标在哪里?巨头纷纷入场智能音箱领域,也是看中了智能音箱将有可能成为物联网的一大入口。P50已登场,P40还能再战吗?随着华为P50的发布到现在已经过了一段时间了,但是这次和以往不太一样的就是P50只有4G版本,暂时不支持5G,这个时候就迎来了一个问题,我想用5G还想用华为怎么办?Mate40抢不LeetCode存在重复元素存在重复元素题目描述给定一个整数数组,判断是否存在重复元素。如果存在一值在数组中出现至少两次,函数返回true。如果数组中每个元素都不相同,则返回false。示例说明请见LeetC你每月的手机月租是多少?看到这个手机月租,我突然想到我用的第一个手机,当时还是直板机,2G网络,但这个不是重点,重点是我以前的流量是5元30M,10元70M那种,原来一个月30M根本用不完,当时每天就是登传化智联苏宁招商港口中远海控等发布半年报全国首条氢能重卡示范线投运首家中国品牌自提柜落地法国9月2日,菜鸟联合速卖通正式启用在法国巴黎部署的自建自提柜,这是中国自提柜运营商首次落地法国。自建自提柜将主要设置在巴黎的核心商业区和核心景区,如凡尔赛宫请问很多人在头条做影视剪辑是怎么做的?单纯的影视剪辑还是蛮简单的,一般都是新手入门的必经步骤。首先你要找到一款适合你的视频剪辑软件,如果有电脑的话建议使用电脑进行剪辑,比较常用的比如爱剪辑快剪辑等当然使用手机也是可以的你手中摄影设备的配置是什么?索尼微单a7m2套头2870,索尼黑卡m624200,准备再购入一个定焦和一个100400长焦,业余爱好,足矣主机尼康D850。副机尼康D800e,索尼黑卡rx10和rx100,富买空调时,上面标注的一级能效,二级能效是什么意思?中国能效标识是一个市场准入概念,它直观地明示了家电产品的能源效率等级。等级1表示产品节电已达到国际先进水平,能耗最低等级2表示产品比较节电等级3表示产品能源效率为我国市场的平均水平华为挑战小华为海康威视,夺得多个亿元安防大单欧界传媒在安防行业,华为和还未期间一直处于行业领先地位,而素来有小华为之称的海康威视,市场占有率达到了全球第一,市值接近五千亿元,而现在,华为进入安防市场,原有的市场格局正在逐渐被关于绿色包裹概念的构建与其延伸的现实意义背景与概念随着互联网技术的发展,传统商业模式已经逐步被互联网电商所替代,伴随着大型平台和微平台的电商产业的迅速发展,电商逐渐成为推动经济转型升级与助力脱贫攻坚的新引擎。与此同时,与
博众精工5GAI助力机器视觉搭载智造快车文朵啦图博众精工机器视觉技术作为工业智能化快速发展的一个分支,为机器人自动化设备加上了眼睛和智慧,在智能制造的浪潮中扮演着重要的角色。今年7月中旬,工信部联合十部门共同印发5G应用HDMI高清传输方式如何发展阜新声艺视听HDMI是被设计来取代较旧的模拟信号影音发送接口如SCART或RCA等端子的。它支持各类电视与计算机视频格式,包括SDTVHDTV视频画面,再加上多声道数字音频。随着高清产品的广泛出类拔萃的粉色omting三口65w氮化镓开箱体验市面上氮化镓的充电头不是黑的就是白的,让人审美疲劳。omthing推出了自家的65W三口氮化镓充电头,除了常规的白色外竟然还有粉色。开箱包装正面非常简约,只有产品图和omthing快乐滑行好玩伴mcro迈古儿童平衡车体验评测每一代人都有自己童年时期美好的回忆,作为一个90后,童年时期玩玩弹弓和泥巴,在田野里追逐打闹,无拘无束非常快乐。但是如今科技虽然改变了我们的生活,但也带来了很多副作用,现在的小孩从土豪的快乐你根本体会不到玫瑰金版iPhone13上手,价格感人现在大家都是手机不离手,所以如今手机除了具备工具属性之外,同样具备了时尚和配饰的功能。所以手机跟汽车手表腰带一样,成为了一个人的身份和气质的象征。人们会不自觉地通过你用的手机,来给声学漫谈声音三要素阜新声艺视听声学三要素是指音调音色响度。任何复杂的声音都可以用此三个属性来描述,其分别对应声压的三个物理量频率相位幅度。音调人耳对于声音高低的感觉,称为音调。音调主要与声音的频率有关,同时业余超高性价比西圣I07真无线蓝牙耳机体验自从2016年AirPods一代的发布,真无线蓝牙耳机慢慢在人们眼前活跃。而2019年则是真无线蓝牙耳机的爆发元年。各个厂商都试图来分一杯羹,市面上的产品也良莠不齐。如何挑选一款适何谓金耳朵阜新声艺视听何谓金耳朵金耳朵顾名思义就是对音色敏感人群的一种评价,或者是通过后期一系列特殊训练而来的一种技能考核。而其简单理解为在任何情景任何设备器材任何音乐裡面可以准确判断其音色上的优良以及00后生活方式报告出炉!阜新声艺视听不知不觉,首批00后已经陆续成年进入职场。近日,人民网发布的00后生活方式洞察报告(以下简称报告)中显示,随着人生阶段的推进,00后逐渐释放出难以估量的消费势能。商业社会向这一未来机柜乱如何解决?机柜间如何理线?阜新声艺视听最近不断的有朋友问到到关于机柜如何理线?不同线缆用什么颜色来区分?有没有相关理线视频内容等,这个问题我们之前有提过到,杂乱无章的机柜线确实让人看着疼,如何才能做出美观的机柜呢?本期真香级主动降噪蓝牙耳机余音R1体验随着主动降噪耳机技术的不断发展,余音成功将主动降噪蓝牙耳机的价格打到了199RMB!今天我给大家推荐的便是这款售价仅仅199RMB的余音R1主动降噪蓝牙耳机!依旧是余音一贯的黑金设