TypeScript中的类型(1)

一、TypeScript简介

TypeScript是Javascript的一个超集,主要提供了类型系统和对ES6的支持,它由Microsoft开发,代码开源于GitHub上。

二、为什么使用TypeScript

  • TypeScript增加了代码的可读性与可维护性
  • TypeScript非常包容
  • TypeScript拥有活跃的社区

三、安装使用TypeScript

  • 全局安装命令 npm install -g typescript
  • 编译文件 tsc hello.ts
  • 约定文件以.ts为后缀,编写react时,以.tsx为后缀
  • 主流IDE中都支持TS,包括代码补全,接口提示,跳转转义,重构

四、hello world

  • 新建hello.ts文件

console.log('hello world');
var a:string = "1";

命令行执行tsc hello.ts生成相应hello.js文件

  • ts中var a:string = 1;在编译的时候会提示“error TS2322: Type '1' is not assignable to type 'string'”,但依然会在hello.js中生成相应代码,体现了ts的包容性。

五、TypeScript原始数据类型

  • string number boolean null undefined enum symbol
var str:string = '1';
var num:number = 1;
var bol:boolean = true;

var nul:null = null;
str = null;
num = null;
bol = null;
// null 是 string、number、boolean字子类型,故这三种类型可设置成null

var un:undefined = undefined;
str = undefined;
num = undefined;
bol = undefined;
// undefined 是 string、number、boolean字子类型,故这三种类型可设置成undefined
  • 空值一般采用void来表示,void可表示变量也可表示函数返回值
var callback = function ():void{  
}
var a:void = null

六、TypeScript中的任意值

  • 任意值(Any)用来表示允许赋值为任意类型
  • 声明一个变量为任意值之后,对它的任何操作,返回的内容类型都是任意值
  • 变量如果在声明的时候,未指定其类型,那么它会被识别为任意值类型
var an:any = 1;
an = '1';
an = true;
an = null;
an = undefined;

var a; // a被认为任意类型

七、TypeScript中的类型推论

  • TypeScript会依据类型推论(Type Inference)的规则推断出一个类型
var a = 1; // 当给一个变量赋值初始化的时候,如果没有指定类型,会根据初始值推导它的类型number
// a = '1' 会报错
  • 如果定义的时候没有赋值,不管之后有没有赋值,都会被推断成any类型而完全不被类型检查
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • TypeScript 是微软开发和控制的开源项目,我在应用 Anguar 2+ 和 Ionic 2+ 框架开发系统...
    廖全磊LesterLiao阅读 5,617评论 0 3
  • 背景认识: TypeScript 是微软开发一款开源的编程语言,本质上是向 JavaScript 增加静态类型系统...
    紫夏离殇阅读 4,507评论 0 1
  • 这是16年5月份编辑的一份比较杂乱适合自己观看的学习记录文档,今天18年5月份再次想写文章,发现简书还为我保存起的...
    Jenaral阅读 8,008评论 2 9
  • 慕课网@JoJozhai 老师 TypeScript入门课程分享 TypeScript入门 ES5,ES6,JS,...
    shangpudxd阅读 13,558评论 0 22
  • 书香传世,金银留名,教育者,天下之重也,为师者,行学之广也。 从零八年到壹八年,十载光阴,稍纵即逝,一个人...
    无鱼之水无徒之察阅读 1,337评论 0 0

友情链接更多精彩内容