typescript2

1、typescript
1.for of
forEach() for in && for of
for of 忽略数组的属性,可是能够跳出循环
语法:
var (var x of arr1){
if(x>2) break;
console.log('for of',x);
}
for of能够做为遍历数组的方法,也能够遍历字符串
for(var y of 'hello word'){
console.log('for of str',y);
}程序员

2.类 class
es6中的class能够看作是一个语法糖,es5均可以作到,es6中的class写法只是让对象原型更加清晰,更加相似于面向对象编程
1)类是ts的核心,使用ts作开发时,大部分代码都是写在类里面的
语法:
class Person{
name1;//属性
eat(){//方法
console.log(`$(this.name1)喜欢吃肉`);
}
}
var p1=new Person();
p1.name1='小红';
p1.eat();
var p2=new Person();
p2.name1='小黄';
p2.eat();es6

2)类的访问控制符
public (默认):公开的
公共属性,能够在任何地方访问(类的内部,类的实例化对象,类的子类)
private:私有的
私有属性和方法只能在类的内部访问,其余任何地方都不能访问
protected:受保护的
受保护的属性和方法,只能在类的内部和子类内部中访问,其余地方不能访问
3)类的构造函数
constructor 构造器
语法:
class Student{
constructor(){
//当类被实例化时(new)才会调用构造函数
super();
}
}typescript


类的构造函数的做用:用于实例化对象属性初始化
ts中直接定义类是不能传参的,若是传递了参数,就须要使用构造器接受参数,而且能够在构造器中对属性今夕初始化值
eg:
class Dog{
public name: string;
age: number;
constructor(name:string,age:number){
//属性初始化
this.name=name;
this.age=age;
}
eat(){
console.log(`${this.name}喜欢吃白菜`);
}
}
var dog=new Dog('阿黄',3);
dog.eat();编程

4)类的继承 extends
语法:数组

class Father{
public name:string;
age:number;
//构造函数中的参数用于接受子类调用super是传入的值
constructor(name:string,age:number){
this.name=name;
this.age=age;
}
}
class Son extends Father{
constructor(){
//super方法用于子类继承父类的属性和方法
super(name,age);//super中穿的参数,在父类的构造函数中接受
}
}函数

5.泛型
声明变量时候能够指定变量的类型,还能够指定变量里存储的内容的类型,指定数组中只能存放什么类型的元素
语法:
var strArr:Array<string>=[];this

3、ts中的接口 interface
接口用于创建某种代码规范,让其余开发者在调用某个方法或建立新的类时,必须遵循接口锁规定的代码规范(数据类型的规范)
js中没有接口的定义,ts中提供了两个关键字来支持接口的特效:
声明接口:interface
声明某个类实现接口:implements
4、模块 module
模块能够帮助程序员将代码分隔为可重用的单元,开发者能够本身决定将模块中的那些资源(变量,方法,类,暴露出去供外部使用,那些资源仅仅在当前模块使用,在ts中,一个模块就是一个文件,两个关键词:
导出:export(将资源暴露)
导入:import(导入资源)es5

相关文章
相关标签/搜索