2017-09-19 4 views
0

Javascriptの仕組みと「すべて」が可能なため、これは難しいことは分かっています。Javascript(ノード)で「コンパイル」やタイプミスを検出する方法はありますか?

しかし、私はエラーが頻繁に発生し、コードを実行するまで気づかず、変数や関数にタイプミスを書いたため、すべてがクラッシュしたり、エラーを返します。

クラッシュが私が望むことができる最高のものです。いくつかのエラーはすぐには目立たないかもしれないし、プロダクションに潜入するかもしれない微妙なエラーを引き起こす「有効な」未定義の値を送信します。

見つからない関数や、宣言されていない変数などを呼び出すのに役立つツールはありますか?

機能をテストする前に "コンパイル"してコードが正常であることを確認するのに役立つもの。

+2

はを見てください[活字](https://www.typescriptlang.org/) –

+0

jshint/jslint学習typescriptですより利き少ない重いです:P –

+0

@JaromandaXほら、私はこの中にどこかで見た誓う可能性コンパイル時に型エラーを検出する方法など - 私は絶対的な過剰なものとして私の答えを取り戻す –

答えて

2

あなたはJavaScriptをコンパイルすることはできませんが、オプションがあります。

  • ESLint - リンターを使用すると、洞察力、そして時にはクイックフィックスをコーディング提供するツールです。 ESLintは最も一般的で柔軟性があり、最も一般的なエディタとの統合を備えています。純粋なJavaScriptを使いたい場合は、これが唯一のオプションです。
  • Flow - JavaScript用の静的型チェッカー。 Flowは、TypeScriptとは異なり、別の言語ではなくJavaScriptを拡張します。 JavaScriptコードを変更しないと、Flow checkerは(私が間違っていないかぎり)いくつかの洞察を提供することができますが、標準modusオペランドは型注釈でJavaScriptを飾ることです。
  • TypeScript - TypeScriptは別の言語であり、JavaScriptのスーパーセットであることが提案されています。不可能ではないにしても、既存のコードベースでの使用を開始するのはFlowより難しいです。ここでRedditとHackerNewsの議論に従えば、TypeScriptはFlowよりはるかに一般的です。
  • 良いエディターを使用しています。実際、コードの品質においてエディタの重要性を過小評価することがあると私は考えています。 - WebStormは間違いなく勝者です。コードの洞察力、特にリファクタリングのオプションは無敵です。 VS Codeにはまだまだ追いつくべきことがたくさんありますが、今は最高の無料オプションです。 VSコードには、TypeScriptを使用していなくてもコードの型チェックを行うためのフックの後ろにTypeScriptが使用されています。私は、VSコードとその拡張機能が最終的にWebStormに追いつくと思う。

私の個人的な提案は次のとおりです。可能であれば、TypeScriptを使用してください。それ以外の場合は、最新のJS(ES201 *)にESLintと多くの単体テストが付属しています。 TypeScriptを使用しないと、ユニットテストがさらに重要になります。私はフローを使用しません。その理由は、Facebookがその点でMicrosoftに勝てないことを認識したときに、その開発とサポートが停止する可能性があるからです。大きなプロジェクトの場合は、WebStormを使用します。小さいものの場合は、WebStormまたはVS Codeを使用します。

関連する問題