TypeScript学习之——接口(个人笔记)

介绍


接口:约定一个对象中有哪些成员,并且约定成员的类型。作用是对数据进行类型约束,在实际运行的阶段并没有意义。编译后接口会移除。

基本用法


interface Post { // 定义一个接口Post,约定对象中有title和content成员
    title: string
    content: string
}
function printPost(post: Post) {
    console.log(post.title)
    console.log(post.content)
}

printPost({ // 多传和少传都会提示错误
    title: 'my title',
    content: 'my content'
})

可选成员、只读成员和动态成员


// 可选成员和动态成员不能同时定义到一个接口里面
interface MyCache {
    title: string
    content: string
    subtitle?: string // 可选成员:后面加?
    readonly summary: string // 只读成员:前面加readonly
}
const cache: MyCache = {
    title: 'my title',
    content: 'my content',
    summary: '摘要'
}
// cache.summary = 'xxx' 只读属性不可以修改

interface More {
    [prop: string]: string | number // 动态成员:[]表示动态成员,prop不是固定的,可以定义其它的名字
}
const more: More = {
    name: 'jack',
    age: 18
}

你可能感兴趣的:(TypeScript学习之——接口(个人笔记))