pxt-calliope/docs/js/lang.md
2016-07-25 16:53:33 -04:00

1016 B

JavaScript and TypeScript

You can write micro:bit programs in a subset of TypeScript, a superset of JavaScript. Many micro:bit programs, especially at the beginner's level, are just plain JavaScript. TypeScript introduces class-based object-oriented programming, such as:

class Greeter {
    greeting: string;
    constructor(message: string) {
        this.greeting = message;
    }
    greet() {
        return "Hello, " + this.greeting;
    }
}

let greeter = new Greeter("world");
basic.showString(greeter.greet())

This site is meant for teaching programming first, and JavaScript second. For this reason, we have stayed away from concepts that are specific to JavaScript (for example, prototype inheritance), and instead focused on ones common to most modern programming languages (lexically scoped variables, functions, classes). We leverage TypeScript's type inference so that students need not specify types when clear from context.