typescript之初学习

ts的优势:

支持ES6规范

强大的IDE支持(类型检测、语法提示、重构等)

Angular的开发语言

ts的新特性:

一、字符串

1、多行字符串,使用反引号``

2、字符串模板,使用表达式传入变量和方法。例如`dadad${name}dsfdsf`,同样需要反引号。这里可以用于自己开发模板数据绑定模块

3、自动拆分字符串

 1 function test(template, name, age){
 2     console.log(template);
 3     console.log(name);
 4     console.log(age);
 5 }
 6 
 7 var myname = "zhai";
 8 
 9 var getAge = function(){
10     return 12;
11 };
12 
13 test.`hello my name is ${myname}, i'm ${getAge()}`;

二、参数新特性:

1、参数类型:声明数据类型,显示声明和隐式声明  any可以任何类型。变量和方法的后面

2、默认参数:主要是方法的默认参数 test(b: string = '23'){...} 

3、可选参数: function test(c?: string){ ... } 

三、函数新特性:

1、Rest and Spread操作符:用来声明任意数量操作符。 test(...arg){...} 

2、generator函数:控制函数的执行过程,手动暂停和恢复代码的执行

3、destructuring析构表达式:通过表达式将对象或数组拆解成任意数量的变量。解构

四、表达式与循环:

1、箭头表达式:用来声明匿名函数,消除传统匿名函数的this指针问题

2、for of循环:可以break出循环

五、面向对象特性:

1、类class:用class关键字声明一个类、类的构造函数、类的继承extends

2、泛型generic:集合的类型Array<Person>

3、接口interface:建立某种代码约定

4、注解annotation:注解为程序的元素(类、变量、方法)加上更明了的说明,这些说明信息与程序的业务逻辑无关,而是供指定的工具或框架使用的。

5、类型定义文件*.d.ts:类型定义文件用来帮助开发者在ts开发中使用已有的js库,例如jq

原文地址:https://www.cnblogs.com/huanqiuxuexiji/p/9199551.html