最終更新
[] + []; // JavaScript は "" を返す (意味不明な仕様)。 TypeScript はエラーを表示する
//
// その他の意味不明なJavaScriptの仕様
// - 実行時エラーが発生しない (そのため、デバッグが難しい)
// - しかし、TypeScriptはコンパイル時にエラーを表示する (デバッグ自体を不要にする)
//
{} + []; // JS : 0, TSはエラー
[] + {}; // JS : "[object Object]", TSはエラー
{} + {}; // JS : ブラウザによって、NaN または [object Object][object Object], TSはエラー
"こんにちは" - 1; // JS : NaN, TSはエラー
function add(a,b) {
return
a + b; // JS : undefined, TSはエラー '到達不可能なコードが検知されました'
}