接口
接口的作用: 在面向对象的编程中,接口是一种规范的定义,它定义了行为和动作规范,在程序设计里面,接口起到了一种限制和规范的作用
接口定义了某一批类所需要遵守的规范,接口不关心这些类的内部状态数据,也不关心这些类里面方法的实现细节,它只规定这批类里面必须提供某些方法,提供这些方法的类就可以满足实际需要
typescript 中的接口类似于 java,同时还增加了更灵活的接口类型,包括属性,函数,可索引和类等
Typescript 中的接口
标准写法
// 定义接口
interface FullName{
firstName:string;
secodeName:string;
}
// 声明方法, 传入的参数为接口中定义的类型
function printName(name:FullName){
console.log(name.firstName + name.secodeName);
}
// 调用方法,传入定义好的接口,参数
printName({
firstName:’aa’,
secodeName:’bb’
});
顺序可调乱
interface FullName{
firstName:string;
secodeName:string;
}
function printName(name:FullName){
console.log(name.firstName + name.secodeName);
}
printName({
secodeName:’bbb’,
firstName:’aaa’,
});
另一种正确写法,传入的参数可比定义的多
interface FullName{
firstName:string;
secodeName:string;
}
function printName(name:FullName){
console.log(name.firstName + name.secodeName);
}
var obj = {
age:20,
firstName:’cc’,
secodeName:’dd’
}
printName(obj);
错误写法
数据类型不一致
数量不一致
可选参数?
interface FullName{
firstName:string;
secodeName?:string;
}
function printName(name:FullName){
console.log(name);
}
printName({
firstName:’aa’
})
printName({
firstName:’aa’,
secodeName:’bb’
})