2014-09-16
【随時更新】JavaScript vs TypeScript vs Dart
[ PR ]
| JavaScript | TypeScript | Dart | |
|---|---|---|---|
| 登場時期 | 1995年 | 2012年 | 2011年 |
| 設計者 | ブレンダン・アイク | マイクロソフト | グーグル |
| 開発者 | ネットスケープコミュニケーションズ Mozilla Foundation |
マイクロソフト | グーグル |
| 影響を受けた言語 | C言語、Java、Perl、Python、Scheme、Self | JavaScript, Java, C# | JavaScript, Java, Smalltalk, Erlang, Strongtalk, C# |
| ライセンス | 処理系による | Apache License | BSDライセンス |
| 拡張子 | .js | .ts | .dart |
| エントリポイント | (ルート) | (ルート) | void main(){ ... } |
| 文字列 | console.log("hello"); | console.log("hello") | print("hello"); |
| 整数 | 3 + 2 | 3 + 2 | 3 + 2 |
| 小数 | .3 + 1e2 | .3 + 1e2 | .3 + 1e2 |
| 変数(型指定) | - | var a:number = 3 | int a = 3; |
| 変数(型省略) | var a = 3; | var a = 3 | var a = 3; |
| 関数(型指定) | - | function f(n:number):number{ return n*n } |
int f(int n){ return n*n; } |
| 関数(型省略) | function f(n){ return n*n; } |
function f(n){ return n*n } |
f(n){ return n*n; } |
| 無名関数 | var f = function(){} | var f = function(){} | var f = (n) => n*n; |
| if | if(true){ console.log("true"); }else{ console.log("false"); } |
if(true){ console.log("true"); }else{ console.log("false"); } |
if(true){ print("true"); }else{ print("false"); } |
| クラス | function A(name){ this.name = name } |
class A { name: string; constructor(name: string){ this.name = name; } } |
class A { String name; A(String name) { this.name = name; } } |
| インスタンス | var a = new A("Tom"); | var a = new A("Tom"); | var a = new A("Tom"); |
| JSの利用 | document.createElement('btn'); | document.createElement('btn'); | import "dart:html"; void main(){ document.createElement('btn'); } |
| チートシート | Javascript Cheat Shee | TypeScript Cheat Sheet | Dart Cheat Sheet |
| オンライン REPL | repl.it - JavaScript | Playground | Try Dart! |
TypeScript入門 クラスと型チェック機能を加えたJavaScriptの拡張言語
posted with amazlet at 14.09.16
日経BP社 (2014-08-12)
売り上げランキング: 52,171
売り上げランキング: 52,171
