ホームページ >ウェブフロントエンド >jsチュートリアル >TypeScript と JavaScript の主な違い: 重要な点と簡単なコード例
JavaScript と TypeScript は、Web 開発で最も人気のある 2 つのプログラミング言語です。 JavaScript は何年も前から存在し、広く使用されていますが、TypeScript は JavaScript に追加機能をもたらす新しい言語です。このブログ投稿では、JavaScript と TypeScript の 10 の主な違いを検討し、それらの違いを明確に理解するのに役立つ簡単なコード例を提供します。
JavaScript は動的に型指定されます。つまり、変数はあらゆる型のデータを保持でき、型を動的に変更できます。 TypeScript では静的型付けが行われます。つまり、変数の型を事前に定義する必要があります。これにより、エラーを早期に検出し、コードの安全性を高めることができます。
<code class="language-javascript">let name = "John"; name = 10; // 这在 JavaScript 中可以正常工作</code>
<code class="language-typescript">let name: string = "John"; name = 10; // TypeScript 将抛出错误,因为 10 是数字,而不是字符串</code>
JavaScript は、ビルド手順なしでブラウザーまたは Node.js で直接実行されます。
ただし、TypeScript は、ブラウザーまたは Node.js で実行する前に JavaScript にコンパイルする必要があります。これは、TypeScript が環境が理解できるものに翻訳されるようなものです。
tsc app.ts
// これにより、TypeScript コードが JavaScript にコンパイルされます
JavaScript はインターフェイスやカスタム タイプをサポートしていません。 TypeScript を使用すると、カスタム タイプとインターフェイスを定義して、データ構造を正しく使用できるようになります。
<code class="language-javascript">let person = { name: "John", age: 30 };</code>
<code class="language-typescript">interface Person { name: string; age: number; } let person: Person = { name: "John", age: 30 }; // TypeScript 确保对象与接口匹配</code>
JavaScript は型を推論しないため、変数が保持する型を手動で追跡する必要があります。 TypeScript は、変数の型を初期値に基づいて自動的に推測することで作業を簡素化します。
<code class="language-javascript">let num = 10; // 您必须手动跟踪它是数字</code>
<code class="language-typescript">let num = 10; // TypeScript 推断 'num' 是数字</code>
JavaScript はクラスと継承をサポートしていますが、それは非常に基本的なものです。 TypeScript は、アクセス修飾子 (public、private、protected) などの機能を追加することで JavaScript のクラス システムを拡張し、コードをより柔軟にして保守しやすくします。
<code class="language-javascript">class Animal { constructor(name) { this.name = name; } }</code>
<code class="language-typescript">class Animal { public name: string; constructor(name: string) { this.name = name; } }</code>
JavaScript と TypeScript にはそれぞれ長所がありますが、TypeScript はより強力なツール、優れたタイプ セーフ、大規模プロジェクトの管理に役立つ機能を提供します。 JavaScript は Web 開発にとって常に不可欠ですが、大規模なアプリケーションに取り組んでいる場合、またはエラーを早期に検出したい場合は、TypeScript の方が良い選択かもしれません。
この 2 つの主な違いが明確になることを願っています。ご質問がある場合、またはさらに詳しい説明が必要な場合は、お知らせください。コーディングを楽しんでください! ?
以上がTypeScript と JavaScript の主な違い: 重要な点と簡単なコード例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。