美文网首页
typeScript接口interface

typeScript接口interface

作者: 泛酸的桂花酒 | 来源:发表于2020-07-05 21:07 被阅读0次

    什么是接口

    接口是一系列抽象方法的声明,是一些方法特征的集合,这些方法都应该是抽象的,需要由具体的类去实现,然后第三方就可以通过这组抽象方法调用,让具体的类执行具体的方法。
    TypeScript 的核心原则之一是对值所具有的结构进行类型检查。

    typescript interface的使用

    typescript interface 可以包含只读属性,可选属性,函数类型

    user.say = function(words: string) {
        return 'hello world'
    }
    interface User {
        name: string
        age?: number    //可选属性
        readonly isMale: boolean //只读属性
        say: (words: string) => string  //函数类型
    }
    

    可索引类型

    假设小甲的信息如下:

    {
        name: 'xiaojia',
        age: 22,
        isMale: false,
        say: Function,
        msg: {
            NetEase: 'xioajia@163.com',
            qq: '1022994235@qq.com',
        }
    }
    

    小乙的信息如下:

    {
        name: '小乙',
        age: 15,
        isMale: true,
        say: Function,
        msg: {
            NetEase: 'xiaoming@163.com',
            qq: '1022994235@qq.com',
            sina: '1022994235@sina.com',
        }
    }
    

    这两个人的信息,他们的 phone 属性有共同之处,首先他们的 key 都是 string 类型的,其次 value 也是 string 类型,虽然数量不等。
    这个时候我们可以用可索引类型表示,可索引类型具有一个索引签名,它描述了对象索引的类型,还有相应的索引返回值类型。

    interface Phone {
        [name: string]: string
    }
    
    interface User {
        name: string
        age?: number
        readonly isMale: boolean
        say: () => string
        phone: Phone
    }
    

    接口继承

    如下图vipuser继承了user,supperuser,接口是可以继承多个 的。

    interface VIPUser extends User, SupperUser {
        broadcast: () => void
    }
    

    相关文章

      网友评论

          本文标题:typeScript接口interface

          本文链接:https://www.haomeiwen.com/subject/diomqktx.html