Open2

TypeScriptで異なる型でもエラーにならないパターンがあった

kwstkwst

こういうパターン何か名前ついてるのかな?

型Aのbと型Bのcがoptionalのときにエラーが出ないパターンがあって困った。

type A = {
  a: string;
  b?: number;
};

type B = {
  a: string;
  c?: number;
};

function testFunc(props: A) {}

const b: B = {
  a: "a",
  c: 1
};

// これはエラーにならない
testFunc(b);

// これはエラーになる
testFunc({
  a: "a",
  c: 1
});