😎

TypeScriptのinterfaceとtypeどちらを使う?

2022/08/04に公開

結論:お好きな方でいい

オブジェクトに型を定義するときは、interfaceとtypeどちらでもいい。
どちらかと言えば、typeを使用する方がいい。

interfaceとtype違いは?

一番の使用するときに、ポイントとなるのは、「拡張」です。
interdace=「拡張できる」 type=「拡張できない」

interface hoge {
  foo: string;
}

interface hoge {
  bar: number;
}
const hogehoge: hoge = {
  foo: "jack",
  bar: 0
};
type hoge = {
  foo: string;
} //識別子 'hoge' が重複しています

type hoge = {
  bar: number;
} //識別子 'hoge' が重複しています

僕はtypeを使います

僕は、記憶力がよくないので、開発の途中で意図せぬ変更をしてしまって気づかないままバクを発生させていまうことが容易に想像できました。
違いも理解できましたので、type一本で行きます。

Discussion