typescript快速入门笔记--基础篇

typescript学习总结:与js相比,强化了数据类型,添加了es6新增功能,强化了类,模块化开发;我觉得吧其实就是js一个添加了es6的严格模式下开发规范;

typescript的文件后缀 .ts;使用tsc 文件名,编译.ts为.js文件,使用node,运行js文件;
tsc常见编译参数如下
--help
--module 载入扩展模块
--target 设置ECMA版本
--declaration 额外生成一个.d.ts扩展名文件
--removeComments 删除文件注释
--out 编译多个文件并合并到一个输出的文件
--sourcemap 生成一个sourcemap(.map)文件,存储对应源代码与编译代码位置的文件
--module nolmplictiAny 在表达式和声明上有隐含的any类型的报错
--watch 监听模式下运行编译器

npm install typescript. //安装typescript
tsc test.ts //编译ts文件
node test.js. //运行js文件

一、数据类型
1.sring:字符串类型,关键字string,例如:let name:string="张山"
2.number:数字类型,关键字number,例如:let age:number=3;
3.boolean:布尔类型,关键字boolean,例如:let isshow:boolean=false;
4.any:任意值类型,关键字any;
5.null:表示对象值缺省
6.undefined:用于初始化变量为一个未定义的值
7.never:代表从不会出现的值;同城用于返回错误
8.void:标识该方法没有返回值,关键字 void;function hello():void{}

9.数组类型:无关键字,定义let arr[]=[1,2,3]
10.元组:已知数组元素类型的数组;let x:[string,number];x=["张三",30]
11.枚举:关键字emun,定义数值集合;enum Color {Red,Green,Blue };let c: Color=Color.Blue;
12.联合类型:
定义let val:string|number|boolean;

枚举:字符串枚举,数值枚举,异构枚举
(1)枚举的值默认从0开始,可以指定值,其后面的值递增
(2)在一个字符串枚举里,每个成员都必须用字符串字面量,或另外一个字符串枚举成员进行初始化。

改变变量数据类型:
(1)可以使用any:实现不确定值得切换
(2)类型断言:<类型> 值;或 值 as 类型;例如:let age=string | number;(<string>age).length,或是(age as string).length
(3)typescript是强类型,会对未定义类型变量进行类型推断,不符合会报错;
(4) 联合类型使属性必须是所有类型都有属性,否则会报错

使用typeof 判断类型,instanceof判断对象是否是指定类型;

函数
(1)普通函数定义:function name(){}
(2)无返回值函数 function name():void {}
(3)定义返回值类型函数:function name():type {}
(4)带参数函数:function name(param1:datatype,param2:datatype){};
(5)带可选参数:function name(param1:datatype,params2?:datatype){};
(6)默认值参数:function name(params1:dataype,params2:dataype=default){}
(7) 剩余参数:function name(params1:datatype,...restofName:string[]){}
(8) 匿名函数,匿名函数调用:(function(){})()
(9)构造函数:new Function ([arg1[, arg2[, ...argN]],] functionBody)
(10) 递归函数:函数自己调用自己
(11)箭头函数:es6箭头函数
(12)函数重载

typescript 接口interface
(1)接口定义:interface interface_name{}
接口不能转换成javascript,他只是typescriot的一部分;
(2)使用接口:let customer:interface_name{}
(3)接口属性:必选属性,可选属性(标识符?),任意属性(属性值必须包含所有接口的类型)
(4)接口继承:extends,多个接口继承使用,分开

typescript 类class
(1) 定义 class className{}
(2) 使用 new clasName(参数)
(3) 使用static定义静态属性和方法,可以直接使用类名调用;
(4) 类的继承 extends,不支持多个继承,支持多重继承;
(5) 继承类的方法重写:super 关键字是对父类的直接引用,该关键字可以引用父类的属性和方法
(6) 访问修饰符:public(公有),protected(自身及子类,父类访问),private(私有,自身反问)
(7) 类可以实现接口,使用关键字 implements,并将 interest 字段作为类的属性使用

typescript不能直接给对象添加方和和属性,可以使用类型模板;

命名空间:
(1)关键字namespace,定义命名空间,export输出接口,类;
(2)命名空间可以嵌套
(3)命名空间的使用,.调用,/// <reference path = "SomeFileName.ts" />

typeScript声明文件;
(1)类型:.d.ts后缀名;
declare var jQuery: (selector: string) => any;
jQuery('#foo');
declare 关键字来定义它的类型,帮助 TypeScript 判断我们传入的参数类型对不对:
declare 定义的类型只会用于编译时的检查,编译结果中会被删除。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,271评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,275评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,151评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,550评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,553评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,559评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,924评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,580评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,826评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,578评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,661评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,363评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,940评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,926评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,156评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,872评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,391评论 2 342

推荐阅读更多精彩内容