【TypeScript】Non-null assertion operator(変数の末尾に!)
- 「この変数はnullやundefinedeではないよ〜」とコンパイラに教えてくれる。つまり、
<T | undefined | null>
型の変数x
があったとして、x!
って書いたらnull および undefinedを除外した<T>
を生成してくれる。 - 実行時(JSに変換された後)にこのコードは削除される。
!
オペレーターはあくまで型チェックをスキップするだけで、実行時にnull
などが入る可能性は依然としてあることに注意。- なのでjestを書く場合などは
expect(...).not.tuBeNull()
などでチェックしてあげる必要がある。
- なのでjestを書く場合などは