Learning TypeScript 2.x
上QQ阅读APP看书,第一时间看更新

Interfaces

In TypeScript, we can use interfaces to ensure that a class follows a particular specification:

interface LoggerInterface{ 
    log(arg: any): void; 
} 
 
class Logger implements LoggerInterface { 
    log (arg: any){ 
        if (typeof console.log === "function") { 
            console.log(arg); 
        } else { 
            console.log(arg); 
        } 
    } 
} 

In the preceding example, we have defined an interface LoggerInterface and a class Logger, which implements it. TypeScript will also allow you to use interfaces to declare the type of an object. This can help us to prevent many potential issues, especially when working with object literals:

interface UserInterface { 
    name: string; 
    password: string; 
} 
 
// Error property password is missing 
let user: UserInterface = { 
    name: "" 
}; 
We will learn more about interfaces and other object-oriented programming concepts in Chapter 4 , Object-Oriented Programming with TypeScript.