TypeScript 的一个最主要特点就是可以定义静态类型,英文是 Static Typing。那到底是什么意思那?太复杂的概念性东西这里就不讲了,你可以简单的理解“静态类型”为,就是你一旦定义了,就不可以再改变了。比如你是男人就是男人,一辈子都要作男人;是女人就是女人,一辈子都是女人。这个事不可以改变!呃....好像现在也可以随便变来变去啊,这里说的是正常情况。但是它还有一些特性,这个并不像表面的那么简单。现在我们就来学习。
如何定义静态类型
你可以在上期的文件夹下建立一个新的demo2.ts
文件,然后写下这段代码:
const count: number = 1;
这就是最简单的定义一个数字类型的count
的变量,这里的: number
就是定义了一个静态类型。这样定义后count
这个变量在程序中就永远都是数字类型了,不可以改变了。比如我们这时候给count
复制一个字符串,它就报错了。
//错误代码
const count: number = 1;
count = "Code程序人生";
但这只是最简单的理解,再往深一层次理解,你会发现这时候的count
变量,可以使用number
类型上所有的属性和方法。我们可以通过在count
后边打上一个.看出这个特性,并且编辑器会给你非常好的提示。这也是为什么我喜欢用VScode
编辑器的一个原因。
自定义静态类型
你还可以自己去定义一个静态类型,比如现在你定义一个小姐姐
的类型,然后在声明变量的时候,就可以使用这个静态类型了,看下面的代码。
interface XiaoJieJie {
uname: string;
age: number;
}
const xiaohong: XiaoJieJie = {
uname: "小红",
age: 18,
};
这时候你如果声明变量,跟自定义不一样,VSCode
直接就会报错。需要注意的是,这时候xiaohong
变量也具有uname
和age
属性了。
这期你需要记住的是,如果使用了静态类型,不仅意味着变量的类型不可以改变,还意味着类型的属性和方法也跟着确定了。这个特点就大大提高了程序的健壮性,并且编辑器这时候也会给你很好的语法提示,加快了你的开发效率。
随着你不断的深入学习,你会对这两个优点有更深的理解。