JavaScript — JS について知っていること
JavaScript (JS とも呼ばれます) には、学ぶことが非常に重要ないくつかのコア概念があります。このブログでは、これらの JS の重要な概念を簡潔かつ要点を絞って説明しようとしました。確かに、これらのトピックを学んだ後は、JavaScript はそれほど奇妙ではなくなります。だから、それ以上苦労することなく!始めましょう。
高度
な抽象化 プログラミングでは、高度な抽象化とは、比較的複雑な部分が隠され、単純化された部分が表示されることを意味します。高度に抽象化された言語の構文は、C や Java などの低レベル言語に比べて簡単であるため、プログラマーは JavaScript、Python、Go などの高度に抽象化された言語を簡単に操作できます。
ガベージ コレクター
C のような低レベル言語とは異なり、JavaScript では手動でメモリを維持する必要はありません。むしろ、JavaScript はガベージ コレクションと呼ばれる自動メモリ管理を使用します。JavaScript エンジンは、Mark-and-Sweep アルゴリズムを使用して、未使用のメモリ割り当てを自動的に収集し、削除します。
JIT コンパイル
JIT (ジャスト イン タイム) コンパイルの助けを借りて、プログラムは実行時にネイティブ コードにコンパイルされ、パフォーマンスが向上します。最新のブラウザーは、実行時間を短縮する JavaScript コードをコンパイルするための JIT コンパイルをサポートしています。
マルチパラダイム
マルチパラダイム言語により、プログラマーは複数のアプローチでプログラムを設計できます。JavaScript は、オブジェクト指向プログラミング、手続き型プログラミング、関数型プログラミングなどをサポートしています。
プロトタイプベース
明らかに、JavaScript はプロトタイプベースの言語です。つまり、オブジェクトのプロパティとメソッドは、複製および拡張可能な一般化されたオブジェクト全体で共有できます。簡単に言えば、オブジェクトのプロパティとメソッドを複製でき、新しく複製されたオブジェクトにプロパティとメソッドを追加することもできます。
動的型付け
簡単に言えば、JavaScript では変数の型が実行時にチェックされます。そのためには、変数のデータ型を指定する必要さえありません。また、型強制と呼ばれる実行時にデータ型も自動的に変更できるため、緩やかに型付けされた言語と呼ばれます。ただし、JavaScript のスーパーセットである TypeScript は静的型付け言語です。
シングルスレッド
JS には 1 つのコール スタックと 1 つのメモリ ヒープがあります。つまり、命令を実行するためのスレッド (プロセス) は 1 つだけです。簡単に言うと、JavaScript では一度に 1 つのステートメントしか実行されません。
非同期
シングルスレッド言語ですが、JavaScript はコールバック キューとイベント ループの助けを借りて非同期的に動作します。非同期ステートメントはコールバック キューに格納され、イベント ループによって呼び出されます。その後、同期操作が実行されるたびに実行されます。
ノンブロッキング ノンブロッキングとは、以降の操作のために実行をブロック
しないという概念を指します。JavaScript は、拡張 I/O 操作と HTTPS 要求の完了を待機しません。待機する代わりに、非同期ステートメントをコールバック キューに格納し、残りの同期操作を実行します。このノンブロッキングの概念は、すでに説明した JavaScript の非同期動作にも関連しています。
関数は第一級市民
JavaScript では、関数は第一級市民と呼ばれます。JavaScript では、関数を変数として宣言したり、別の関数で引数として渡したり、関数から返すことができるためです。また、オブジェクトのメソッドとして関数を設定することもできます。
注: このブログでは、JavaScript の最も重要な機能と特性の概要を説明しようとしました。次に、これらの上記のトピックについてさらに学ぶことがあなたの義務です。

![とにかく、リンクリストとは何ですか?[パート1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































