目次
JavaScriptとは
JavaScriptは「画面やアプリを動かすためのプログラミング言語」で、主に次のような場面で使用されています。
- ブラウザの中で動作するプログラム
- ボタンを押したら表示が変わる
- フォームの入力をチェックする
- スクロールに合わせてアニメーションする
- SPA(シングルページアプリ)を作る(Twitter, Gmail みたいなWebアプリ)
- サーバーサイドで動作するプログラム(Node.js)
- Web API を作る
- バッチ処理・スクリプト
- チャットアプリ・リアルタイム処理(WebSocketなど)
- ツール・スクリプトとして使用
- 小さな自動化スクリプト
- ビルドツール(Webpack, Vite などの裏側)
- CLIツール(コマンドラインツール)
JavaScriptはブラウザ専用の言語ではありませんが、ブラウザで動作する言語といえばJavaScriptというぐらい標準的な言語となっています。
JavaScriptとECMAScript
ECMAScriptとは
ECMAScript(エクマスクリプト) は、JavaScriptの言語仕様をまとめたルールブックの名前です。
どんな文法があるか、+ はどう振る舞うか、class はどう動くか…
そういうものが厳密に定義されています。
JavaScriptは実際に動く「製品名」
実際に私たちが触るのは、
- ブラウザに組み込まれている JavaScript エンジン
- Node.js に入っている JavaScript エンジン
といった 「実装」 です。
代表的な実装は、以下のようなものがあります。
- Chrome / Node.js : V8
- Firefox : SpiderMonkey
- Safari : JavaScriptCore
JavaScriptのバージョン
JavaScriptの歴史
- ES3(昔)
- 古いブラウザ時代。今から新しく覚える必要はないです。
- ES5(2011年頃)
Array.prototype.forEachなどのメソッド追加Object.createなど- いわゆる「従来のJavaScript」のイメージ
- ES2015(ES6)(2015年)
let,constclassarrow function(=>)Promiseimport/export
などなど、今の「モダンJavaScript」の土台になっている大きなアップデートです。
以降は毎年アップデートされていて、
- ES2016
- ES2017
- …
- ES2023
- ES2024(今後もどんどん続く)
のように 年号ベース で名前がついています。
実務的なポイント
実際に学ぶときに、ここだけ押さえておけばOKです。
- 基本的に「ES2015以降」を前提にする。
- 「ES5」は「古い書き方・古い環境をサポートしたいときのために、なんとなく知っておく」程度でOK。
- ES2015以降の ES2016〜ES202x は、以下のような便利機能が毎年少しずつ追加されているイメージです。
async/await??/?.- クラスフィールド / プライベートフィールド
コメント