typescript接口的概念 以及属性类型接口
/*
1、vscode配置自动编译 1.第一步 tsc --inti 生成tsconfig.json 改 "outDir": "./js", 2、第二步 任务 - 运行任务 监视tsconfig.json 2、typeScript中的数据类型 typescript中为了使编写的代码更规范,更有利于维护,增加了类型校验,在typescript中主要给我们提供了以下数据类型 布尔类型(boolean)
数字类型(number)
字符串类型(string)
数组类型(array)
元组类型(tuple)
枚举类型(enum) 任意类型(any)
null 和 undefined
void类型
never类型 3、typeScript中的函数 3.1、函数的定义
3.2、可选参数
3.3、默认参数
3.4、剩余参数
3.5、函数重载
3.6、箭头函数 es6
4、typeScript中的类 4.1 类的定义
4.2 继承
4.3 类里面的修饰符
4.4 静态属性 静态方法
4.5 抽象类 多态
5、typeScript中的接口 5.1 属性类接口
5.2 函数类型接口
5.3 可索引接口
5.4 类类型接口
5.5 接口扩展 */ /*
接口的作用:在面向对象的编程中,接口是一种规范的定义,它定义了行为和动作的规范,在程序设计里面,接口起到一种限制和规范的作用。接口定义了某一批类所需要遵守的规范,接口不关心这些类的内部状态数据,也不关心这些类里方法的实现细节,它只规定这批类里必须提供某些方法,提供这些方法的类就可以满足实际需要。 typescrip中的接口类似于java,同时还增加了更灵活的接口类型,包括属性、函数、可索引和类等。 定义标准。 */ // 1、属性接口 对json的约束 //ts中定义方法
/*
function printLabel():void {
console.log('printLabel');
}
printLabel();
*/ /*
ts中定义方法传入参数 function printLabel(label:string):void {
console.log('printLabel');
} printLabel('hahah'); */ /*
ts中自定义方法传入参数,对json进行约束 */ /* function printLabel(labelInfo:{label:string}):void {
console.log('printLabel');
} printLabel('hahah'); //错误写法 printLabel({name:'张三'}); //错误的写法 printLabel({label:'张三'}); //正确的写法
*/ //对批量方法传入参数进行约束。 //接口:行为和动作的规范,对批量方法进行约束 //就是传入对象的约束 属性接口
// interface FullName{ // firstName:string; //注意;结束
// secondName:string; // } // function printName(name:FullName){ // // 必须传入对象 firstName secondName
// console.log(name.firstName+'--'+name.secondName);
// }
// // printName('1213'); //错误 // var obj={ /*传入的参数必须包含 firstName secondName*/
// age:20,
// firstName:'张',
// secondName:'三'
// };
// printName(obj) // 接口:行为和动作的规范,对批量方法进行约束 // interface FullName{
// firstName:string; //注意;结束
// secondName:string;
// } // function printName(name:FullName){
// // 必须传入对象 firstName secondName
// console.log(name.firstName+'--'+name.secondName);
// } // function printInfo(info:FullName){ // // 必须传入对象 firstName secondName
// console.log(info.firstName+info.secondName);
// } // var obj={ /*传入的参数必须包含 firstName secondName*/
// age:20,
// firstName:'张',
// secondName:'三'
// };
// printName(obj); // printInfo({
// firstName:'李',
// secondName:'四'
// }) //接口 :可选属性 // interface FullName{ // firstName:string;
// secondName:string;
// } // function getName(name:FullName){ // console.log(name)
// }
// //参数的顺序可以不一样
// getName({
// secondName:'secondName',
// firstName:'firstName'
// }) // interface FullName{
// firstName:string;
// secondName?:string;
// } // function getName(name:FullName){ // console.log(name)
// }
// getName({
// firstName:'firstName'
// }) /*
$.ajax({
type: "GET",
url: "test.json",
data: {username:$("#username").val(), content:$("#content").val()},
dataType: "json"
}); */ interface Config{
type:string;
url:string;
data?:string;
dataType:string;
} //原生js封装的ajax
function ajax(config:Config){ var xhr=new XMLHttpRequest(); xhr.open(config.type,config.url,true); xhr.send(config.data); xhr.onreadystatechange=function(){ if(xhr.readyState==4 && xhr.status==200){
console.log('chengong'); if(config.dataType=='json'){ console.log(JSON.parse(xhr.responseText));
}else{
console.log(xhr.responseText) } }
}
} ajax({
type:'get',
data:'name=zhangsan',
url:'http://a.itying.com/api/productlist', //api
dataType:'json'
})
typescript接口的概念 以及属性类型接口的更多相关文章
- typescript属性类型接口
/* typeScript中的接口 - 1.属性类接口 */ /* 接口的作用:在面向对象的编程中,接口是一种规范的定义,它定义了行为和动作的规范,在程序设计里面,接口起到一种限制和规范的作用.接口定 ...
- java中接口的概念及使用(补充final修饰符的使用)
接口 初期理解,可以是一个特殊的抽象类 当抽象类中的方法都是抽象的,那么该类可以通过接口的形式来表示 class 用于定义类 interface 用于定义接口 接口定义时,格式特点: 1.接口中常见的 ...
- 机器学习实战基础(三十七):随机森林 (四)之 RandomForestRegressor 重要参数,属性与接口
RandomForestRegressor class sklearn.ensemble.RandomForestRegressor (n_estimators=’warn’, criterion=’ ...
- Typescript中的可索引接口 类类型接口
/* 5.typeScript中的接口 可索引接口 类类型接口 */ /* 接口的作用:在面向对象的编程中,接口是一种规范的定义,它定义了行为和动作的规范,在程序设计里面,接口起到一种限制和规范的作用 ...
- TypeScript 高级类型 接口(interface)
在代码的实现或者调用上能设定一定的限制和规范,就像契约一样.通常,我们把这种契约称为接口. TypeScript的核心原则之一是对值所具有的结构进行类型检查. 有时称为“鸭式辨型法”或“结构性子类型化 ...
- typescript可索引接口 类类型接口
/* 接口的作用:在面向对象的编程中,接口是一种规范的定义,它定义了行为和动作的规范,在程序设计里面,接口起到一种限制和规范的作用.接口定义了某一批类所需要遵守的规范,接口不关心这些类的内部状态数据, ...
- typescript函数类型接口
/* 接口的作用:在面向对象的编程中,接口是一种规范的定义,它定义了行为和动作的规范,在程序设计里面,接口起到一种限制和规范的作用.接口定义了某一批类所需要遵守的规范,接口不关心这些类的内部状态数据, ...
- 转载:《TypeScript 中文入门教程》 3、接口
版权 文章转载自:https://github.com/zhongsp 建议您直接跳转到上面的网址查看最新版本. 介绍 TypeScript的核心原则之一是对值所具有的shape进行类型检查. 它有时 ...
- TypeScript学习笔记(五):接口
使用接口 在前面的笔记中我们知道可以使用Object Type来指定参数的属性,如下: function printLabel(labelledObj: {label: string}) { cons ...
随机推荐
- Oracle数据库的学习
复制数据库结构到另外一数据库的的语句,首先在数据库创建链接,比如我在131数据库,dblink_018 的018为链接名称,随便取 ,可在此表查看数据库链接 select * from dba_db_ ...
- [转]B树(多向平衡查找树)详解
B-树是对2-3树数据结构的扩展.它支持对保存在磁盘或者网络上的符号表进行外部查找,这些文件可能比我们以前考虑的输入要大的多(以前的输入能够保存在内存中). (B树和B+树是实现数据库的数据结构,一般 ...
- redis实现与分析-单机数据库实现
数据库 1,1个数据库数据结构和上面一样,两个字典,一个包含所有的键,一个包含了键的过期时间 2,redis删除过期键策略:定期+惰性 定期:一段时间开始删,删不全下次继续删 惰性:使用键的时候检察 ...
- pyspark数据准备
鸢尾花数据集 5.1,3.5,1.4,0.2,Iris-setosa 4.9,3.0,1.4,0.2,Iris-setosa 4.7,3.2,1.3,0.2,Iris-setosa 4.6,3.1,1 ...
- MySQL通过Navicat实现远程连接
直接使用Navicat通过IP连接会报各种错误,例如:Error 1130: Host '192.168.1.80' is not allowed to connect to this MySQL s ...
- bzoj 3600 没有人的算术——二叉查找树动态标号
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3600 已知 l 和 r 的排名,想快速知道 k 的排名.那么建一个 BIT ,用已知的排名做 ...
- MeshLab显示纹理贴图
共需要三个文件:obj文件.mtl文件及一张纹理图. 1.obj文件需要满足如下格式: 顶点 v 纹理坐标 vt 法线 vn 面片f Vertex1/Texture1/Normal1 Vertex2/ ...
- influxDB硬件配置指南
原地址:https://docs.influxdata.com/influxdb/v1.6/guides/hardware_sizing/ 警告!此页面记录了不再积极开发的InfluxDB的早期版本. ...
- CheckFail设计很垃圾
function checkFail(node, onError, fuckIE) { var id = node.src;//检测是否死链 node.onlo ...
- 黄聪:实用WordPress SQL查询方法
为所有文章和页面添加自定义字段 这段代码可以为WordPress数据库内所有文章和页面添加一个自定义字段. 你需要做的就是把代码中的‘UniversalCutomField‘替换成你需要的文字,然后把 ...