Copy function reverse (x : number ) : number ;
function reverse (x : string ) : string ;
function reverse (x : number | string ) : number | string {
if ( typeof x === 'number' ) {
return Number ( x .toString () .split ( '' ) .reverse () .join ( '' ));
} else if ( typeof x === 'string' ) {
return x .split ( '' ) .reverse () .join ( '' );
}
}
Copy interface Alarm {
price : number ;
}
interface Alarm {
weight : number ;
}
Copy interface Alarm {
price : number ;
weight : number ;
}
Copy interface Alarm {
price : number ;
}
interface Alarm {
price : number ; // 雖然重複了,但是型別都是 `number`,所以不會報錯
weight : number ;
}
Copy interface Alarm {
price : number ;
}
interface Alarm {
price : string ; // 型別不一致,會報錯
weight : number ;
}
// index.ts(5,3): error TS2403: Subsequent variable declarations must have the same type. Variable 'price' must be of type 'number', but here has type 'string'.
Copy interface Alarm {
price : number ;
alert (s : string ) : string ;
}
interface Alarm {
weight : number ;
alert (s : string , n : number ) : string ;
}
Copy interface Alarm {
price : number ;
weight : number ;
alert (s : string ) : string ;
alert (s : string , n : number ) : string ;
}