前端必学TypeScript之第一弹,st基础类型!

TypeScript 是微软开发的 JavaScript 的超集,TypeScript兼容JavaScript,可以载入JavaScript代码然后运行。TypeScript与JavaScript相比进步的地方 包括:加入注释,让编译器理解所支持的对象和函数,编译器会移除注释,不会增加开销;增加一个完整的类结构,使之更新是传统的面向对象语言。

安装ts编译器(在此之前需要先安装node)

npm install -g typescript

检查版本

tsc -v

 

 

 使用方法,需要转换为js文件

tsc 1.ts

 

 

 

 

 

 

就会发现系统自动转换了一个.js文件,我们就可以使用npm 1.js 输出;

 

基本类型

// 基本类型
let num:number = 123;
let str:string = '哈哈';
let bool:boolean=true;
console.log(num,str,bool)

数组

// 数组
let strArr:string[] = ['a','b','c']
let numArr:number[] = [1,2,3]
let boolArr:boolean[] = [true,false]
let anyArr:any[] = ['a',1,false,null,undefined]
console.log(strArr,numArr,boolArr,anyArr)

元祖

// 元祖>表示一个已知的数据类型
let tuple : [string,number,boolean,any] = ['a',1,false,undefined];
//  调用时候系统会检测是什么类型,然后提示对应的方法;
console.log(tuple[0].substr(0))
console.log(tuple[1].toFixed())

枚举

// 枚举
enum Sex {
    Man,
    Women
}
let sex1:Sex = Sex.Man
let sex2:Sex = Sex.Women
// 输出的是下标
console.log(sex1,sex2)

enum类型

// enum
enum NewSex {
    //  枚举可以修改默认值
    Man1 = 3,
    Women2 = 7
}
let sex3:NewSex = NewSex.Man1
let sex4:NewSex = NewSex.Women2
// 输的是下标,输出的是3,4;
console.log(sex3,sex4)
//  通过下标得到参数
let chang1:string = NewSex[3]
let chang2:string = NewSex[7]
console.log(chang1,chang2)

any任意类型

// any 可以为任意类型的值,在不确定值得类型的时候使用;
let any1:any = 123;
let any2:any = 'abc';
let any3:any = true;
console.log(any1,any2,any3)

void无返回值

// void 无返回值,void类型,只能赋值null和undefined
let void1:void = null;
let void2:void = undefined;
// 这里不能定义string,number,boolean
console.log(void1,void2)
function fun():void{
    console.log('前端伪大叔')
}
fun()

never必须存在无法到达的终点

// never :必须存在无法到达的终点
// 表示永不存在的值的类型 1、抛出异常的参数 2、不会有返回的函数表达式 3、箭头函数的返回值类型
// 任意类型的子类型,可以赋值给任意类型(说白了就是任何类型都有一个never类型)
// nnever没有子类型,任何类型都不能赋值给never类型(除了never自己)
function error(mes:string):never{
    //  抛出异常函数
    throw new Error(mes)
}
error('未知错误')
// 可以使用永true或者false,更多的用于底层的框架
// object 除了number,string,boolean,symbol类型

如果大家喜欢的话,欢迎关注“前端伪大叔”我将为您不间断的分享前端学习知识!

 

posted @ 2019-10-27 20:27  前端伪大叔  阅读(466)  评论(0编辑  收藏  举报