课堂typescript语法精讲三我们可以通过类似于判_第1页
课堂typescript语法精讲三我们可以通过类似于判_第2页
课堂typescript语法精讲三我们可以通过类似于判_第3页
课堂typescript语法精讲三我们可以通过类似于判_第4页
课堂typescript语法精讲三我们可以通过类似于判_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

npTypep我们可以通过类似于typeofpadding==="number"的判断语句,来改变TypeScriptp在给定的执行路径中,我们可以缩小 时更小的类型,这个过程称之为缩小p而我们编写的typeofpadding==="number可以称之为类型保护(typenptypeof 缩小(ppp

n在TypeScript中,检查返回的值typeof是一种类型保护:因为TypeScript对如何typeof n我们可以使用Switch或者相等的一些运算符来表达相等性(比如===,!==,==,and!=

nJavaScript nJavascript有一个运算符,用于确定对象是否具有带名称的属性:inp如果指定的属性在指定的对象或其原型链中,则in运算符返回

n在JavaScript开发中,函数是重要的组成部分,并且函数可以作为一等公民(可以作为参数,也可以作为返回值进np我们可以编写函数类型的表达式(FunctionTypeExpressions)

n在上面的语法中(num1:number,num2:number)=>void,p接收两个参数的函数:num1和num2,并且都是numberp并且这个函数是没有返回值的,所以是n在某些语言中,可能参数名称num1和num2是可以省略,但是TypeScript

nn这个时候这个参数x依然是有类型的,它是什么类型呢?number|n

n从ES6开始,JavaScript是支持默认参数的,TypeScriptn这个时候y的类型其实是undefined和number

n从ES6开始,JavaScript也支持剩余参数,剩余参数语法允 一个不定数量的参数放到一个数组中

nthis是JavaScript中一个比较难以理解和把握的知识点:p我 也有一篇文章专门讲解this:2sCRlTAp因为this在不同的情况下会绑定不同的值,所以对于它的类型就更难把握了;n那么,TypeScript是如何处理this呢?我们先来看一个例子:n上面的代码是可以正常运行的,也就是TypeScript在编译时,认为我们的thispTypeScript认为函数 o有一个对应的this的外部对象info,所以在使用时,就会把this当做该对象

n但是对于某些情况来说,我们并不知道thisnp这里我们再次强调一下,TypeScriptp所以这里对于 o的调用来说,我们虽然将其放到了info中,通过info去调用,this依然是指向info对象的p但是对于TypeScript编译器来说,这个代码是非常不安全的,因为我们也有可能直接调用函数,或者通过别的对象来

n这个时候,通常TypeScript会要求我们明确的指定this

n在TypeScript中,如果我们编写了一个addnnp

n比如我们对sump在我们调用sumn

nnppnp

n在早期的JavaScript开发中(ES5)我们需要通过函数和原型链来实现类和继承,从ES6开始,引入了class关键字,可以nTypeScript作为JavaScript的超集,也是支持使用classn实际上在JavaScriptp比如React开发中,目 使用的函数组件以及结合Hook的开发模式p比如在Vue3开发中,目前也更加推崇使用Compositionnn类的定义我们通常会使用classpp

n我们来定义一 n使用classn我们可 一些类的属性:在类的内 类的属性以及对应的类p如果类型没 ,那么它们默认是any的pp在默认的strictPropertyInitialization模式下面我们的属性是必须初始ü如果我们在strictPropertyInitialization模式下确实不希望给属性初始化,可以使用name!:string语法;n类可以有自己的构造函数constructor,当我们通过new关键字创建一个pn

nn我们使用extends关键字来实现继承,子类中使用super 父类n我们来看一下Student类继承 pStudent类可以有自己的属性和方法,并且会继 的属性和方法p在构造函数中,我们可以通过super

n在TypeScript中,类的属性和方法支持三种修饰符:public、private、ppublic修饰的是在任何地方可见、公有的属性或方法,默认编写的属性就是publicpprivatepprot

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论