JavaScript new.target について

new.target を使うと、関数やクラスが new 演算子を使って呼び出されたかがわかる。

new を使った場合はその関数・クラスが返る。

使わなかった場合は undefined が返る。

以下が例です。

function MyFunc(){
  console.log(new.target)
}

MyFunc() // log undefined
new MyFunc() // log function MyFunc(){console.log(new.target)}