TypeScript的学习笔记之一
前言
这系列TS学习笔记主要是针对https://ts.xcatliu.com/introduction/what-is-typescript.html,这个网站的学习,对TS来展开一次全面的学习。
对于TS,17年接触过,但是感觉那个时候没有搞明白,没有做到位,所以白浪费了时间,这次要学的到位一些。
笔记从前到后进行梳理,有必要记录笔记的,会记录笔记,暂时感觉没有什么记录的必要的,就仅仅摘录一些基本信息。
正文
这个网站是从google上搜到的,感觉写的很好,所以选做学习的教程,不是什么样的文章都能用来做教程的,现在满大街都是各种教程,看了一些,很多教程一看写作者水平都不高,认知都不深刻,就敢出教程,只会耽误学习的时间,很多内容将来还需要返工去学习。
TypeScript 是 JavaScript 的一个超集,主要提供了类型系统和对 ES6 的支持,它由 Microsoft 开发,代码开源于 GitHub 上。
TS需要类型定义,会有类型检查。
原始数据类型
对于原本JS隐形的数据类型,TS是显式地来表示出来,这样TS来做类型检查。
JavaScript 的类型分为两种:原始数据类型(Primitive data types)和对象类型(Object types)。
原始数据类型包括:布尔值、数值、字符串、
null
、undefined
以及 ES6 中的新类型Symbol
。
boolean和Boolean是有区别的,前者是基本类型,后者是对象。
这个对象是哪里定义的?
参考https://www.w3schools.com/js/js_booleans.asp,
You can use the
Boolean()
function to find out if an expression (or a variable) is true:Example
Boolean(10 > 9) // returns true
这里说Boolean()是一个函数。
参考https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean,
这里说Boolean是一个对象,那就说的通了。
JS原本一等公民是函数,那么这里的boolean,其实是TS引入的定义。
上图截自泽拉斯的《JavaScript高级程序设计(第3版)》。
上图也是来自同样的来源,讲了null和undefined的区别。
任意值
任意值(Any)用来表示允许赋值为任意类型。
类型推论
如果没有明确的指定类型,那么 TypeScript 会依照类型推论(Type Inference)的规则推断出一个类型。
联合类型
联合类型(Union Types)表示取值可以为多种类型中的一种。
2019-03-01,今天暂时学习至此。
参考
posted on 2019-12-15 17:06 chaiyu2002 阅读(78) 评论(0) 编辑 收藏 举报