TypeScript

作成日 : 2017-07-30
最終更新日 :

JavaScript と TypeScript

JavaScript とは緩い型の言語である。それがために、大規模な開発ではしばしば使いにくいとの評判があった。 JavaScript でしっかりした型を導入するにはどうするか。その回答が TypeScript である。 TypeScript は Microsoft 社が開発している。

TypeScript を扱うには、Playground (www.typescripting.org)で、実際に TypeScript の文法に適うスクリプトを入力してみればよい。 デフォルトでは左側の窓に次の2行がある。この2行が TypeScript にしたがったスクリプトである。

const message: string = 'hello world';
console.log(message);

ほかにも左上の Exapmples には大きく6種類に分けられたサンプルがある。


エスペラントの単語かどうか

まず簡単な例を出そう。エスペラントの単語かどうかを判定するプログラムを作ろう。 といっても、エスペラントの文字で作られていれば、エスペラントの単語「かもしれない」 と表示するだけである。厳密には、エスペラントの文字を作るには字上符を含めて、QqWwXxYy を除けばよい。 以上の正規表現は、 ^[A-PR-VZa-pr-vzĈĜĤĴŜŬĉĝĥĵŝŭ]+$ と書けるはずだ。

	let txt = document.createElement('input');  
	let btn = document.createElement('button'); 
	btn.textContent = "エスペラントの単語かどうかを判定します";
	btn.onclick = function () {  
		let result = txt.value.match(/^[A-Za-zĈĜĤĴŜŬĉĝĥĵŝŭ]+$/) ?
			"はエスペラントかもしれない" : "はエスペラントではない";
	  alert(txt.value + result + "ですね");
	  window.close();
	};
	document.body.appendChild(txt); 
	document.body.appendChild(btn);

本当はこれをいじって、エスペラントの可能性があれば、入力文字の末尾を見て、 名詞か、形容詞か、副詞か、動詞か、その他の品詞かをある程度判別できるようなプログラムも可能である。 ただ、これは省略する。

これだけ見ても、従来の JavaScript との違いは判然としない。もう少し、違いがわかる例を持ってこないといけない。

まりんきょ学問所JavaScript 手習い > TypeScript