0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

TypeScriptの基礎的なこと(用語編)

Last updated at Posted at 2020-09-23

TypeScriptとは

JavaScriptにコンパイルされる、静的型システムがついた、JavaScriptの上位集合

なぜTypeScriptか?(なぜTypeScriptしか勝たんのか?)

・ドキュメントとしての側面を利用するため
変数の型とか引数の情報を教えるため、書けなくてもドキュメントを読めて開発効率上がる
・Linterとしての側面を利用するため
ESlintはコロンとかチェックできるけど変数の型は無理。TSはそれができる。強みが違うから共存して生きていくっ!
・ES5へのコンパイラとしての側面を利用するため

any型は使うな!TypeScriptはもうお手上げって思っちゃうから。

void型:何も返さない

watchモード

tsファイルを自動的にjsファイルへコンパイルする。「tsc index.ts —watch(-w)」

tsc —initとtscコマンド

tsc —initでコンパイル設定用tsconfig.jsonが生まれる。その後にtsc叩くと一括コンパイルできる

constructor

予約語?初期化、最初の処理 

publicとprotectedとprivate(こいつらはES6じゃなくてTypeScript。要は、よそ者)

・public
誰でもどこからでもおk。何でも良い。ガバガバ。ガバマン
(readonlyはどこでも使える) 

・protected
継承先からなら良いよ〜。ちょっとお硬いけど実は柔軟なやつ。

・private
絶対このクラスからしか通さん。このクラスしか勝たん。

abstract

継承用クラスだよ!って宣言するTypeScriptのメソッド。ES6はゆるいから厳格に決める。ちなabstractにするとインスタンスが作成できない(staticはおk)

interfaceとは

オブジェクトのみのタイプエイリアス

Nullish Coalescing(三項演算子のTypeScriptバージョンみたいな)

const userData = downloadedData.user ?? "no-user"; // undifとnullだけ右側が反応する

オプショナルプロパティとは

語尾に「?」をつけることで、あってもなくてもokになる。

デコレーター

クラスを受け取ってデコレーションする。ただの関数。「@」から始まるよ。クラスの定義時に発火する。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?