4. TypeScript
TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.
Any browser. Any host. Any OS. Open Source.
JavaScript that scales.
9. interface I { }
class C { }
module M { }
{ s: string; }
number[]
() => boolean
// Number
var x: number; // 明示的
var y = 0; // y: number と同じ
// Boolean
var b: boolean; // 明示的
var yes = true; // yes: boolean = true と同じ
// String
var s: string; // 明示的
var n = "akira"; // n: string = "akira" と同じ
// Enum
enum Color { Red, Green, Blue }
var myColor = Color.Red;
Console.log(Color[myColor]); // Red
10. interface Dog {
name: string;
Talk: () => string;
}
class Corgi implements Dog {
name: string;
constructor(name: string) {
this.name = name;
}
Talk(): string {
return "Bow wow!";
}
}
class myDog extends Corgi {
constructor() {
super("reo");
}
Talk(): string {
return "Wan wan!";
}
}
namespace M {
export var reo = new myDog();
}
alert(M.reo.Talk());
11. class Human<T> { ... }
var me = new Human<string>("Akira");
var a = function (x: number) { return Math.sin(x); } // 標準式
var b = x => Math.sin(x)
class Who {
private _name: string;
get Name() { return this._name; }
set Name(name: string) { this._name = name; }
}