プロを目指す人のためのTypeScript入門 読書メモ⑤ 第4章(2)
■ 思ったこと
壁のキュウめちゃくちゃ面白かった!!これからも出てほしい!!
■ 第4章 TypeScriptの関数(4.1.7~4.1.10)
可変長引数
- 可変長引数?Restパラメータを使うみたいだが覚えてるか!?
...変数名
、これね! - 構文は
...変数名: 型
、受け取った引数を全て可変長引数にぶち込むので、型注釈で配列型を書いてほしいナ! - 可変長引数を最後に設定すれば、他の配列と併用してOK、残余引数と一緒ね
逆に、関数を呼ぶならスプレッド構文
- 可変長引数に対して、関数呼び出し時にスプレッド構文が使うこともできる。構文は
関数(...式)
const sum = (...args: number[]): number =>{ // 処理 }; const nums = [1,2,3,4,5]; console.log(sum(...nums));
- ちなみに可変長引数もスプレッド構文も使わないとこう・・正直まだうまみが分かる段階にない!
const sum = (args: number[]): number =>{ // 処理 }; const nums = [1,2,3,4,5]; console.log(sum(nums));
オプショナル引数
- 渡しても渡さなくてもいい引数!
?
つかったり初期値入れたりした時の呼び方なのね
コールバック関数
- 関数の引数に関数を渡すこと!
- これをうまく使って関数を抽象化できるとな
- 配列のメソッド使うときに相性がいいらしい・・?
- ていうのも、配列はコールバックに特化した関数をデフォで持ってるから
- 例えば
配列.map(関数)
だと、配列のすべての要素に対して関数呼んで結果で新しい配列作ってくれたり - できた配列は返り値の型になる
- 直接関数を書いても関数式を変数で渡してもいい
- ほかに代表的なfindは条件に一致した最初の要素を返す、filterは条件に一致した要素をすべて返す
- このよーなコールバック関数を高階関数ともいう、聞きなじみねえ~…!
■ 感想
4章はまだまだ続くぞ!!findとかfilterは使ったことあるけど、これらがコールバック関数だったのか。関係ないが、この前ラヴィットで見たイージードゥダンサーズが強烈でもはやダンビラムーチョが最近気になる!・・歌がうまい!