学习TypeScript

一、TypeScript是什么?TS–》编译–》JS

1.以JavaScript为基础构建的语言
2.一个JavaScript的超集
3.可以在任何支持JavaScript的平台中执行(TS不能被Js解析器直接执行)
4.TypeScript扩展了JavaScript,并添加了类型

二、TypeScript增加了什么?

1.类型
2.支持ES的新特性
3.添加ES不具备的新特性
4.丰富的配置选项
5.强大的开发工具

三、TypeScript开发环境搭建

1.下载Node.js
2.安装Node.js
3.使用npm全局安装typescript
。进入命令行
。输入:npm i -g typescript
4.创建一个ts文件
5.使用tsc对ts文件进行编辑
。进入命令行
。进入ts文件所在目录
。执行命令:tsc xxx.ts

四、基本类型

类型			例子				描述
	number			1,-33,2.5			任意数字
	string			"hi","hi"			任意字符串
	boolean			true,false			布尔值truefalse
	字面量			其本身				限制变量的值就是该字面量的值
	any				*					任意类型
	unknown			*					类型安全的any
	void			空值(undefined)	没有值(或undefined)
	never			没有值				不能是任何值
	object			{name?:高冷冷}		任意的js对象(?表示可选属性)
					{name:高冷冷,[xxx:string]:any} 表示任意类型的属性
	array			[1,2,3]				任意js数组
	tuple			[4,5]				元素,TS新增类型,固定长度数组
	enum			enum{A,B}			枚举,TS新增类型
	

五、编译选项

	1.tsc xxx.ts -w  (只用于当前文件)
	2.自动编译
		a,新建一个tsconfig.json文件
		b,执行命令:tsc 
	3.tsconfig.json文件配置
		{
			/*
				3.1 "include":用来指定哪些ts文件需要编译
						*:表示任意文件
						**:表示任意目录
				
				3.2 "exclude": 不需要被编译的文件目录
				
				3.3 "extends":定义被继承的配置文件
				
				3.4 "files" :指定被编译文件的列表,只有需要编译的文件少时才会被用到
				
				
			*/
			
			"include":[
				"./src/**/*"
			],
			
			//"exclude":[
			//	"./src/hello/**/*"
			//],
			
			/*
				compilerOptions :编译器的选项
			
			*/
			
			"compilerOptions":{
				
				//target 用来指定ts被编译为的ES的版本
				//'es3','es5','es6','es2015','es2016','es2017','es2018','es2019','es2020','esnext'
				"target":"es2015",
				
				//module 指定要使用的模块化的规范
				//'none','commonjs','amd','system','umd','es6','es2015','es2020','esnext'
				"module":"es2015",
				
				//lib 用来指定项目中要使用的库
				//"lib":["es2015","dom"],
				
				//outDir 用来指定编译后文件所在的目录
				"outDir":"./dist",
				
				//outFile 讲代码合并为一个文件
				//"outFile":"./dist/app.js",
				
				//allowsJS 是否对js文件进行编译,默认是false
				"allowsJS":false,
				
				//checkJS 是否检查js代码是否符合语法规范,默认是false
				"checkJS":true,
				
				//removeCommons 是否移除注释
				"removeCommons":true,
				
				//不生成编译后的文件,默认是false
				"noEmit":false,
				
				//noEmitOnError 当有错误时就不生成编译后的文件
				"noEmitOnError":true,
				
				//alwaysStrict 用来设置编译后的文件是否使用严格模式,默认false
				"alwaysStrict":true,
				
				//noImplicitAny 不允许隐式的any类型
				"noImplicitAny":true,
				
				//noImplicitThis 不允许不明确类型的this
				"noImplicitThis":true,
				
				//strictNullChecks 严格的检查空值
				"strictNullChecks":true,
						
	
			}
		}	
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值