当前位置: 首页 > news >正文

网站开发用了什么平台移动登录网页模板免费下载

网站开发用了什么平台,移动登录网页模板免费下载,浙江省建筑信息港,网站建设 体会TypeScript 接口 TypeScript 接口定义如下: interface interface_name { } 以下实例中,我们定义了一个接口 IPerson,接着定义了一个变量 customer,它的类型是 IPerson。 customer 实现了接口 IPerson 的属性和方法。 interf…

TypeScript 接口

TypeScript 接口定义如下:

interface interface_name { 
}

以下实例中,我们定义了一个接口 IPerson,接着定义了一个变量 customer,它的类型是 IPerson。

customer 实现了接口 IPerson 的属性和方法。

interface IPerson { firstName:string, lastName:string, sayHi: ()=>string 
} var customer:IPerson = { firstName:"Tom",lastName:"Hanks", sayHi: ():string =>{return "Hi there"} 
} console.log("Customer 对象 ") 
console.log(customer.firstName) 
console.log(customer.lastName) 
console.log(customer.sayHi())  

联合类型和接口

以下实例演示了如何在接口中使用联合类型:

interface RunOptions { program:string; commandline:string[]|string|(()=>string); 
} 

这里commandline可以使字符串数组,字符串,或者函数表达式

接口和数组

接口中我们可以将数组的索引值和元素设置为不同类型,索引值可以是数字或字符串。

设置元素为字符串类型:

interface namelist { [index:number]:string 
} // 类型一致,正确
var list2:namelist = ["Google","Runoob","Taobao"]

 

接口继承

接口继承就是说接口可以通过其他接口来扩展自己。

Typescript 允许接口继承多个接口。

继承使用关键字 extends。

单接口继承语法格式:

Child_interface_name extends super_interface_name

多接口继承语法格式:

Child_interface_name extends super_interface1_name, super_interface2_name,…,super_interfaceN_name

继承的各个接口使用逗号 , 分隔。

interface Person { age:number 
} interface Musician extends Person { instrument:string 
} var drummer = <Musician>{}; 
drummer.age = 27 
drummer.instrument = "Drums" 

TypeScript 类

TypeScript 是面向对象的 JavaScript。

类描述了所创建的对象共同的属性和方法。

TypeScript 支持面向对象的所有特性,比如 类、接口等。

TypeScript 类定义方式如下:

class class_name { // 类作用域
}

定义类的关键字为 class,后面紧跟类名,类可以包含以下几个模块(类的数据成员):

  • 字段 − 字段是类里面声明的变量。字段表示对象的有关数据。

  • 构造函数 − 类实例化时调用,可以为类的对象分配内存。

  • 方法 − 方法为对象要执行的操作。

class Car { // 字段engine:string; // 构造函数constructor(engine:string) { this.engine = engine }  // 方法disp():void { console.log("函数中显示发动机型号  :   "+this.engine) } 
} // 创建一个对象
var obj = new Car("XXSY1")// 访问字段
console.log("读取发动机型号 :  "+obj.engine)  // 访问方法
obj.disp()

类的继承

TypeScript 支持继承类,即我们可以在创建类的时候继承一个已存在的类,这个已存在的类称为父类,继承它的类称为子类。

类继承使用关键字 extends,子类除了不能继承父类的私有成员(方法和属性)和构造函数,其他的都可以继承。

TypeScript 一次只能继承一个类,不支持继承多个类,但 TypeScript 支持多重继承(A 继承 B,B 继承 C)。

class child_class_name extends parent_class_name

继承类的方法重写

   doPrint():void { super.doPrint() // 调用父类的函数console.log("子类的 doPrint()方法。")

static 关键字

static 关键字用于定义类的数据成员(属性和方法)为静态的,静态成员可以直接通过类名调用。

   static num:number; static disp():void { console.log("num 值为 "+ StaticMem.num) } 

 instanceof 运算符

class Person{ } 
var obj = new Person() 
var isPerson = obj instanceof Person; 
console.log("obj 对象是 Person 类实例化来的吗? " + isPerson);

访问控制修饰符

TypeScript 中,可以使用访问控制符来保护对类、变量、方法和构造方法的访问。TypeScript 支持 3 种不同的访问权限。

  • public(默认) : 公有,可以在任何地方被访问。

  • protected : 受保护,可以被其自身以及其子类访问。

  • private : 私有,只能被其定义所在的类访问。

class Encapsulate { str1:string = "hello" private str2:string = "world" 
}var obj = new Encapsulate() 
console.log(obj.str1)     // 可访问 
console.log(obj.str2)   // 编译错误, str2 是私有的

类和接口

类可以实现接口,使用关键字 implements,并将 interest 字段作为类的属性使用。

以下实例中 AgriLoan 类实现了 ILoan 接口:

interface ILoan { interest:number 
} class AgriLoan implements ILoan { interest:number rebate:number constructor(interest:number,rebate:number) { this.interest = interest this.rebate = rebate } 
} var obj = new AgriLoan(10,1) 
console.log("利润为 : "+obj.interest+",抽成为 : "+obj.rebate )

TypeScript 对象

对象是包含一组键值对的实例。 值可以是标量、函数、数组、对象等,如下实例:

var object_name = { key1: "value1", // 标量key2: "value",  key3: function() {// 函数}, key4:["content1", "content2"] //集合
}

TypeScript 类型模板

假如我们在 JavaScript 定义了一个对象:

var sites = {site1: "Runoob",site2: "Google",sayHello: function () { } // 类型模板
};
sites.sayHello = function () {console.log("hello " + sites.site1);
};
sites.sayHello();

通过类型目标可以动态添加方法和实现方式

鸭子类型(Duck Typing)

鸭子类型(英语:duck typing)是动态类型的一种风格,是多态(polymorphism)的一种形式。

在这种风格中,一个对象有效的语义,不是由继承自特定的类或实现特定的接口,而是由"当前方法和属性的集合"决定。

interface IPoint { x:number y:number 
} 
function addPoints(p1:IPoint,p2:IPoint):IPoint { var x = p1.x + p2.x var y = p1.y + p2.y return {x:x,y:y} 
} // 正确
var newPoint = addPoints({x:3,y:4},{x:5,y:1})  // 错误 
var newPoint2 = addPoints({x:1},{x:4,y:3})

http://www.yayakq.cn/news/593380/

相关文章:

  • 购物网站开发介绍上海城乡建设部网站首页
  • 响应式网站内容布局seo优化工作内容
  • 工信部外国网站备案安庆经济开发区人才网
  • 宜昌永东建设网站长春做网站公司
  • 移动应用开发和网站开发网站开发的例子
  • 手机销售网站怎么做ps做ppt模板怎么下载网站
  • 江门网站建设 卓华上海网站设计开发公
  • 淘宝购买网站建设怎么样做国际网站生意
  • 做一件代发哪个网站好做网站数据存在哪里
  • 网站开发报价标准做网站不知道做什么内容的
  • steamcn网站是谁做的网站后台怎么上传图片
  • 积分网站运营建设投标书wordpress修改关键字
  • 做网站还有市场吗怎么把自己做的网站发布出去
  • 网站开发教育培训信息流广告名词解释
  • 二级院系网站建设情况pdf文件打印乱码
  • 网站自建设需要买什么手续网站建设028
  • 本地网站有什么可以做音频网站建设
  • 友汇网网站建设软件外包公司招聘
  • 长春制作门户网站的公司百度关键词推广工具
  • 自己建设网站怎么做关于学校的网页设计
  • 中国建设工程招标网官方网站怎样用织梦做网站
  • 东莞专业做网站的公司有哪些做网站都有什么成本
  • 古镇建网站公司网站配置域名解析
  • 济南城市建设学院网站一个做服装品牌的网站
  • 网站后台编程语言旺道seo工具
  • asp网站应用程序2017年网站建设公司
  • 铁岭 开原网站建设郑州妇科医院排行榜
  • 网络广告是什么株洲专业seo优化
  • 揭阳高端网站建设价格app游戏开发公司哪家好
  • 网站建设需求原型《梦幻西游》官网