Functions name a reusable block of work and describe the types of their inputs.

parameter A parameter is a typed name that receives an argument when the function is called.

Function Basics

userName
basics.ts
Replay: real traced execution (multi-file project)
function greet(name: string): void {
    const message: string = `Hello, ${name}!`;
    console.log(message);
}

const userName: string = "Ada";
greet(userName);
function greet(name: string): void {
    const message: string = `Hello, ${name}!`;
    console.log(message);
}

const userName: string = "Grace";
greet(userName);
function greet(name: string): void {
    const message: string = `Hello, ${name}!`;
    console.log(message);
}

const userName: string = "Linus";
greet(userName);
  1. userName ← Ada

    3    console.log(message);4}56const userName→ Ada: string = "Ada";  //@userName="Grace", "Linus"7greet(userNameAda);
  2. message ← Hello, Ada!

    1function greet(nameAda: string): void {2    const message→ Hello, Ada!: string = `Hello, ${nameAda}!`;3    console.log(messageHello, Ada!);4}
    outputHello, Ada!
  3. greet(userName);

    6const userName: string = "Ada";  //@userName="Grace", "Linus"7greet(userNameAda);
  1. userName ← Grace

    3    console.log(message);4}56const userName→ Grace: string = "Grace";7greet(userNameGrace);
  2. message ← Hello, Grace!

    1function greet(nameGrace: string): void {2    const message→ Hello, Grace!: string = `Hello, ${nameGrace}!`;3    console.log(messageHello, Grace!);4}
    outputHello, Grace!
  3. greet(userName);

    6const userName: string = "Grace";7greet(userNameGrace);
  1. userName ← Linus

    3    console.log(message);4}56const userName→ Linus: string = "Linus";7greet(userNameLinus);
  2. message ← Hello, Linus!

    1function greet(nameLinus: string): void {2    const message→ Hello, Linus!: string = `Hello, ${nameLinus}!`;3    console.log(messageHello, Linus!);4}
    outputHello, Linus!
  3. greet(userName);

    6const userName: string = "Linus";7greet(userNameLinus);

Call the Greeting

  1. userName starts as Ada.
  2. greet(userName) passes Ada into the name parameter.
  3. The function builds Hello, Ada!.
  4. console.log prints the message. | Argument | Printed message | | --- | --- | | Ada | Hello, Ada! | | Grace | Hello, Grace! | | Linus | Hello, Linus! |

Exercise: basics.ts

Call a typed greet function with a user name and print the greeting