book icon indicating copy to clipboard operation
book copied to clipboard

[質問] Mapped Typesの”インデックス型と異なるところ”について

Open blue32a opened this issue 2 years ago • 0 comments

Mapped Typesはインデックス型と異なりsymbol型もキーにすることができます。

Mapped Typesのページではこのように説明されていますが、インデックス型のページではsymbol型も指定できるとありました。

インデックス型のフィールド名の型はstring、number、symbolのみが指定できます。

実際にやってみるとsymbol型に出来たのですが、バージョンによって異ったりするのでしょうか?

// v4.7.4
let obj: {
  [K: symbol]: number;
};
obj = { [Symbol("hoge")]: 3 };
console.log(obj); // { [Symbol(hoge)]: 3 }

関連ページ: https://typescriptbook.jp/reference/type-reuse/mapped-types

blue32a avatar Sep 14 '22 15:09 blue32a