0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

TypeScript で型エラーにならないバグのうちよくハマるものの個人用メモ

Last updated at Posted at 2020-02-04

概要

  • 自分用メモの側面が強いのでご了承ください。
  • JavaScriptの仕様のハマりやすいポイントのメモ
  • TSの型チェックやESLintなどの一般的なチェックツールで弾けるものは対象外
  • TypeScriptで普通に型付けしてても型エラーにならず実行時エラーになるケースなど

配列添字アクセス

  • map, filter, forEach メソッドあたりを使っていれば配列添え字アクセスはめったに必要にならないが、ユーティリティ関数などの実装でたまに必要になることがある。
  • 配列 xs: T[] の要素へ添字アクセス xs[i] すると値が undefined になりうるが、 xs[i] の型は T | undefined ではなく T に評価されているので型チェックで発見できず実行時エラーとなりうる。
  • at: (array: T[], index: number) => T | undefined のようなより安全な添え字アクセスをするための関数を自作するのもあり。
  • Immutable.jsList であれば、 List<T> 型のリストの要素アクセスメソッド get の返り値は T | undefined となるので安全だが、ビルトイン配列オブジェクトより遅く、手軽さも損なわれる。

Array.sort

pipeline operatorが実装されれば atsortNumeric 関数が使いやすくなるはずだが、現状関数呼び出しするしか無い印象。


(今後追記予定)

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?