私は、次のコードを持っている:間違いだったと私は活字体がエラーとして報告する期待の「if」内側「せ」を使用して上記のコードでなぜエラーを報告する代わりに新しい変数を作成するのですか?
let answer: SomeType = new SomeType();
...some code...
if(something)
{
let answer = new SomeType();
}
を。代わりに、Typescriptはこの行をJavaスクリプトにコンパイルしました。 var answer_1 = new SomeType(); は、基本的に独自の新しい変数を生成しました。
これが期待どおりの動作ですか?私はそれがバグだと思う。これは私がvarの代わりにletを使用している理由です。予想される動作の場合、これをエラーとして報告するコンパイラオプションがありますか?
私は、Visual Studio 2017
おかげ
これは、明示的に 'let'キーワードと同じです。 https://basarat.gitbooks.io/typescript/content/docs/let.html – Amy