TypeScript学习心得

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_35414779/article/details/79268612

比较文绉绉的形容typescript的一句话是,“可选静态系统,基于类的编译型语言”(其实我也不太懂这句话的深刻意思)

通俗易懂点描述它就是“js的超集,支持js的所有属性还有其他的优势”

npm安装typescript

npm i -g typescript
在命令行上,运行TypeScript编译器:
>tsc 你的typescript文件.ts

得到 你的文件名.js,然后在web页面或者node中引用它。

1.数据类型

let x:string = '1';
let y:number = 1;
let z:boolean = true;

...
这是ts的一大特性,将js(弱类型语言)转换为了像Java 一样的强类型语言。

(也解决了js的一大鸡肋)

2.元组

let x:[string,number];//可以指定数组的第一个是什么类型,第二个是什么类型
x = ['10',10]; //OK
x = [10,'10']; //Error 
元组相当于约定已知的数组类型,在上面的x数组中,必须x[0]是string类型,x[1]是number类型。

3.枚举

一个枚举类型可以包含零个或者多个枚举成员。枚举成员具有一个数字值。
(没有理解枚举的概念,希望能得到指点。)

4.任意值

说到任意值,ts又是一大便利。

let arr:any[] = [1,'1',false]

console.log(let[1]); //1
在变量后面加上any声明的时候,又相当于把ts从强类型语言转换成了弱类型。变量的定义又回归了let。

不知道要定义的变量是什么类型的时候,就可以直接定义为any,这样编译检测就可以直接省略。


5.空值

个人感觉,ts就是将js不断的向Java这样的语言去转换。

空值表示没有任何类型,就像Java里面的void,表示函数不返回值。

function():void{}
表示着这个函数没有return

6.类型断言

类似大多数语言的类型转换。

let someValue: any = "this is a string";

let strLength: number = (<string>someValue).length;


待更新...

以上都是个人总结出来的,肯定也有不对的地方,欢迎交流指点,互相学习。




猜你喜欢

转载自blog.csdn.net/qq_35414779/article/details/79268612