teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

3

追記

2020/07/22 23:22

投稿

noc
noc

スコア73

title CHANGED
File without changes
body CHANGED
@@ -68,4 +68,4 @@
68
68
  型 'RetA | RetB' を型 'RetA' に割り当てることはできません。
69
69
  プロパティ 'abc' は型 'RetB' にありませんが、型 'RetA' では必須です。ts(2322)
70
70
  ```
71
- これはどうしてでしょうか。オーバーロードを使って、「型に応じて返す型が決まる関数」の定義方法があるのなら教えていただけませんか?
71
+ これはどうしてでしょうか。~~オーバーロードを使って、「型に応じて返す型が決まる関数」の定義方法があるのなら教えていただけませんか?~~ オーバーロードは仕様を表現するだけで型を仕分けするのはコーダーの仕事のようです。

2

質問2の解決

2020/07/22 23:22

投稿

noc
noc

スコア73

title CHANGED
File without changes
body CHANGED
@@ -43,6 +43,7 @@
43
43
 
44
44
  (質問2)
45
45
  また、関数の型をオーバーロードを使って定義するように書き換えようとしたところ、うまくいきませんでした。
46
+ <*追記:オーバーロードは使わないことにしました。>
46
47
  ```typescript
47
48
  type ArgA = [string, number, boolean]
48
49
  type ArgB = [number, number]

1

<hr>追加

2020/07/22 23:20

投稿

noc
noc

スコア73

title CHANGED
File without changes
body CHANGED
@@ -38,9 +38,9 @@
38
38
  ```
39
39
  型アノテーションを使うのは釈然としませんが、現状このような解決方法しかないのでしょうか?
40
40
  もっといい方法があればご教授ください。
41
+ ___
41
42
 
42
43
 
43
-
44
44
  (質問2)
45
45
  また、関数の型をオーバーロードを使って定義するように書き換えようとしたところ、うまくいきませんでした。
46
46
  ```typescript