Typescript parameter code example

Example 1: typescript default parameter

// Default Parameters
sayHello(hello: string = 'hello') { 
    console.log(hello); 
}

sayHello(); // Prints 'hello'

sayHello('world'); // Prints 'world'

Example 2: typescript parameter function type

class Foo {
    save(callback: (n: number) => any) : void {
        callback(42);
    }
}
var foo = new Foo();

var strCallback = (result: string) : void => {
    alert(result);
}
var numCallback = (result: number) : void => {
    alert(result.toString());
}

foo.save(strCallback); // not OK
foo.save(numCallback); // OK

Example 3: typescript function as parameter

function createPerson(name: string, doAction: () => void): void {
  console.log(`Hi, my name is ${name}.`);
  doAction(); // doAction as a function parameter.
}

// Hi, my name is Bob.
// performs doAction which is waveHands function.
createPerson('Bob', waveHands());

Example 4: typescript default parameter

function sayName({ first, last = 'Smith' }: {first: string; last?: string }): void {
  const name = first + ' ' + last;
  console.log(name);
}

sayName({ first: 'Bob' });

Example 5: get function return type typescript

type return_type = ReturnType<() => string>; // string
// or
function hello_world(): string {
  return "hello world";
}
type return_type = ReturnType<typeof hello_world>; // string

Example 6: typescript set argument type

// non typed function
function add(x, y) {
  return x + y;
}

// typed function
function add(x: number, y: number): number {
  return x + y;
}

// types can be found here: https://www.typescriptlang.org/docs/handbook/basic-types.html