xxxxxxxxxx
interface getUploadHandlerParams {
checker : Function
}
xxxxxxxxxx
interface Safer_Easy_Fix {
title: string;
callback: () => void;
}
interface Alternate_Syntax_4_Safer_Easy_Fix {
title: string;
callback(): void;
}
xxxxxxxxxx
// Parameter type annotation
function greet(name: string): string {
return name.toUpperCase();
}
console.log(greet("hello")); // HELLO
console.log(greet(1)); // error, name is typed (string)
xxxxxxxxxx
interface Easy_Fix_Solution {
title: string;
callback: Function;
}
xxxxxxxxxx
interface Date {
toString(): string;
setTime(time: number): number;
// ...
}
xxxxxxxxxx
// Named function
function add(x: number, y: number): number {
return x + y;
}
// Anonymous function
let myAdd = function (x: number, y: number): number {
return x + y;
};
xxxxxxxxxx
// define your parameter's type inside the parenthesis
// define your return type after the parenthesis
function sayHello(name: string): string {
console.log(`Hello, ${name}`!);
}
sayHello('Bob'); // Hello, Bob!