typescript

拆分字符串调用函数

function  test(template,name,age){}

test`name is ${name},age is ${age}  

 

变量指定数据类型

  let name:string ="aaa";    如果默认值为字符串  则默认指定为string类型  后续赋值不为string的话会报错

  :any  任意数据类型  

  :number

  :boolean

  :Person    指定为class 声明出来的类

方法指定数据类型

  function test():void{ }    方法不需要返回值  如果return了  会报错  或者填写string这些

 

方法参数指定数据类型

  function test(name:string,age=18){}  有默认值的参数要放在没有默认值参数后面

 

可选参数

  function test(name:string="xu",age?:number){}    在变量名后面添加问号  可选参数要在必选参数之后

 

...操作符

  function test(...arg){}   可以传入任意数量的参数

 

访问控制符

  public   默认 类的内部外部都能访问 在constructor(public name){} 中   pubilc相当于声明的一个name属性  即this.name=name

  private  私有的  只有类的内部可以访问  

  protected  受保护的  只有类和类的子类可以访问

 

构造函数

  constructor  类中的特殊方法  只有在类被实例化的时候调用 只调用一次(个人理解为实例化时必须传入的参数)

 

泛型 

  let arr:Array<Person>=[ ]; 用来限制集合的内容    规定数组里只能放Person类的内容

 

接口

  interface IPerson{  name:string ;    age:number ; }    定义一个接口   声明属性

  class Person{  constructor(){ public config:IPerson }   }      

  let a = new Person(  {name:'xu',age:18}  ) 当接口用作于方法参数的类型声明,调用时传入对象 会检查参数是否满足接口声明的所有属性,不能多或者少

 

  

  interface Person{  eat()   }
   class Child implements Person{ eat(){ }  } 定义一个接口  在接口里声明方法  所有声明实现接口(implements)的类 必须实现接口中的方法

     

 

posted @ 2018-12-04 03:00  啦啦啦la  阅读(208)  评论(0编辑  收藏  举报