Typescript 学习小记

因为想学做 app 所以找到了 ionic,然后发现 ionic 用的是 Angular ,然后又去学了 Angular,学着学着发现还得先学下 Typescript,因为 Angular 使用的是 Typescript 😂。然后我就去学了 Typescript。

什么是 Typescript

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

我的感觉呢,就是 Typescript 多了一些类型支持,可以定义是整型还是字符串还是某些类。优点就是,这样在编译时就能发现很多错误,不用等到在运行时排错。而且有了类型支持,对 IDE 的支持就会更好,很多补全,接口提示,重构等等都将智能很多。

语法

😂 具体我就不讲了,毕竟我讲的还没书上详细,这里就分享两个网站

TypeScript Handbook(中文版)

TypeScript 入门教程

我是看第二个网站入门的,讲的比较浅一点,毕竟我是想快速上手 Angular 然后上手 ionic。

这门语言有个显著特点就是类型的声明。

1
2
3
4
5
6
function sayHello(person: string) {
return 'Hello, ' + person;
}

let user = 'Robinson';
console.log(sayHello(user));

比方说上面这个例子,原生 javascript li person 直接就写上去就行,不用定义什么类型,而在 Typescript 中就要这样写 person: string 声明它是 string 类型的。由此我们也能知道,Typescript 的类型声明是 变量: 参数类型 这种形式来声明。其他的话跟其他强类型语言都差不多。

再举个栗子👇

1
2
3
function sum(x: number, y: number): number {
return x + y;
}

向这样一个函数,每个变量要定义一下类型, 然后在 sum(x: number, y: number) 后面会要求写上返回值,像这个例子就是 : number ,如果没有返回值就写 : void

最后

还有一些类,接口我就不讲了,OOP 语言有的它都有,在强类型方面可以说有点像 Java这种。学起来还是不难的。😂他们都说 Typescript 很好,但 Angular 就是算了吧。我也没办法,想用 Vue 的,可 Vue 的那个 Weex 太难用了。相对来说 Angular 的 ionic 就优美一点。等以后 Weex 强大了或者有其他移动套件了再用吧。