TypeScript接口
来源:互联网 发布:淘宝 大麦网 编辑:程序博客网 时间:2024/05/01 02:17
1.创建接口
ts:
/*function printLabel(labelObj:{label:string}){ alert(labelObj.label);//Hello}var myObj = {label:"Hello"};printLabel(myObj);*/interface labelValue{ label:string;}function printLabel(labelObj:labelValue){ alert(labelObj.label);//mm}var myObj = {label:"mm"};printLabel(myObj);对应js:
function printLabel(labelObj) { alert(labelObj.label); //mm}var myObj = { label: "mm" };printLabel(myObj);
2.可选属性
ts:
interface USB{ name:string; ang:number; sex?:string;//可选参数,可以传,其它必须用}function printUSB(pu:USB){ alert(pu.age);//2}var my={name:"mm",age:2};printUSB(my);对应js:
function printUSB(pu) { alert(pu.age); //2}var my = { name: "mm", age: 2 };printUSB(my);
3.函数类型
ts:
interface SearchFunc{ (source:string,subString:string):boolean;}var mySearch:SearchFunc;//mySearch = function (source:string,subString:string) {// var result = source.search(subString);mySearch = function (src:string,sub:string) {//类型检查不针对名称,只针对类型 var result = src.search(sub);//search:针对字符串的查询 if(result != -1){ return true; }else{ return false; }};alert(mySearch("mm","m"));//true对应js:
var mySearch;mySearch = function (src, sub) { var result = src.search(sub); //search:针对字符串的查询 if (result != -1) { return true; } else { return false; }};alert(mySearch("mm", "m")); //true
4.数组类型
ts:
interface StringArray{ [index:number]:string;}var myArray:StringArray;myArray=["m1","m2",""];//string类型alert(myArray[1]);//m2对应js:
var myArray;myArray = ["m1", "m2", ""]; //string类型alert(myArray[1]); //m2
5.Class类型
ts:
对应js:interface ClockInterface{ currentTime:Date; setTime(d:Date);}class Clock implements ClockInterface{ currentTime:Date; setTime(d:Date){ this.currentTime = d; } constructor(h:number,m:number){ }}
var Clock = (function () { function Clock(h, m) { } Clock.prototype.setTime = function (d) { this.currentTime = d; }; return Clock;})();
6.接口继承与混合类型
ts:
/*接口继承*/interface Shape{ color:string;}interface PenStroke{ penWidth:number;}interface Square extends Shape,PenStroke{//多继承 sideLength:number;}<strong>var s = <Square>{};//书写格式</strong>s.color = "blue";s.sideLength = 10;s.penWidth = 10;/*混合类型*/interface Counter{ interval:number; reset():void;//方法 (start:number):string;}var c:Counter;c(10);c.reset();对应js:
var s = {}; //书写格式s.color = "blue";s.sideLength = 10;s.penWidth = 10;var c;c(10);c.reset();
0 0
- TypeScript接口
- TypeScript 接口
- TypeScript学习-接口
- TypeScript 接口介绍
- TypeScript类、接口、继承
- TypeScript 的接口的使用
- 【第3篇】TypeScript接口使用
- 一步一步学习TypeScript(18.Interfaces_接口)
- TypeScript学习笔记之 接口(Interface)
- typescript速学:新闻实体对象、接口
- typescript
- TypeScript
- typeScript
- typescript
- TypeScript
- TypeScript
- typescript
- TypeScript
- jQuery on()方法
- MVC、KVO、KVC
- 【非常强大】 对各种语言的简单解析,带你走向编程之路
- hadoop2 hdfs命令
- 树莓派使用 (Raspberry)
- TypeScript接口
- OpenCV2学习笔记(三):形态学及边缘角点检测
- 老龄化社会与移民问题
- POJ 3211 Washing Clothes
- 黑马程序员——12-C语言之预处理指令
- Repeated DNA Sequences (Java)
- Google hack 语法
- 7 图像 下一张图片 Bitmap & assets
- 临界区,互斥量,信号量,事件的区别