仕事ですぐに使える TypeScriptを読んでいくその7

これは

TypeScriptの学習にとても役立ちそうなドキュメントを教えてもらったので
コツコツと読んでいく記事です。

参考記事

著作権者:フューチャー株式会社(Future Corporation)様

future-architect.github.io

第6章

今日は第6章です。
6章は基本的な構文として制御構文と、式についてです。

制御構文

基本的などの言語にもあるifやswitchなどです。
ほとんど他の言語と変わりがないのですが、5章でも取り上げていたforについては
いくつか種類があり、注意が必要そうでした。

・for

// Cなどでおなじみのfor文
// 変数宣言はvarではなくletを使うのが肝
for (let i = 0; i < 5; i++){
    console.log(i);
}

・for..in

// for...ofを使うべきなのでこれから作るものは使わないようにしよう
// 見つけたら修正を検討したほうがいいのかも
// 特に配列のループでの使用は避けておくほうが良いらしい
// 50倍〜100倍遅い
for (let key in obj) {
    if(obj.hasOwnProperty(key))
        console.log(key, obj[key]); 
    }
}

・for...of

// ベターなチョイス。
// arrayの部分にはイテレータを返すメソッドや関数があって
// 便利に使うことができる
for (const value of array) {
    console.log(value);
}

// 例
for (const [key, value] of Object.entries(obj)) {
    console.log(key, value);
}

・for await of

// ES2018以降利用可能
// ループごとに非同期の待ち処理を入れる。
// 新しい機能なので利用できる用途も限定的。
// 並行処理を考えるならPromise.all()を使ったほうが効率的
for await (const body of response.body) {
    console.log(body);
}

基本的に他の言語と一緒。
参考にも書かれている2点が躓きそうだった。

 ・比較演算子の「===」と「==」の使い分け
   ・「===」一致を厳密に比較する
   ・「==」文字列変換の後比較する

 ・**演算子について
   x ** y でMath.pow(x, y)と同じ累乗計算を行う

これも参考資料に書かれているけれど、
ウェブフレームワークでは論理積三項演算子が大事。
Reactなどでは特に三項演算子の活躍の場が。

今日はここまで。