本稿は JavaScript の文法に関する記事です。変数・関数・条件分岐・ループ・配列・連想配列など、JavaScript で日常的に使われる基本構文を扱います。
子ページから項目を選択してください。
本ページの子ページ
- 記述方法 — HTML への埋め込み・外部ファイル読込
- コメント —
//と/* */ - 変数の宣言 — var / let / const の使い分け
- 関数 — function 宣言・関数式・アロー関数
- 演算子 — 算術/比較/論理/代入
- 条件文 — if / else / switch / 三項演算子
- 配列 — Array の基本
- 連想配列 — オブジェクトリテラル
- ループ処理 — for / while / for-of / forEach
- 同期処理
- 非同期処理 — Promise / async / await
- 確認ウィンドウを表示する方法 — alert / confirm
- 文字の置換 — String.replace
- base url を取得する方法
- form の submit 前に javascript を呼び出す方法
- undefined のイコール判定
- JavaScript のみで form を post で submit する方法
文法の全体像
| カテゴリ | 主なキーワード |
|---|---|
| 変数宣言 | var、let、const |
| データ型 | number、string、boolean、null、undefined、bigint、symbol、object |
| 演算子 | 算術 (+ - * / %)、比較 (=== !==)、論理 (&& ||)、ぬる合体 (??)、オプショナルチェイン (?.) |
| 制御構文 | if、else、switch、for、while、for...of、for...in、break、continue |
| 関数 | function 宣言、関数式、=> (アロー関数)、デフォルト引数、可変長引数 (...) |
| オブジェクト | オブジェクトリテラル { key: value }、分割代入 const { a } = obj; |
| 配列 | []、スプレッド ...、map、filter、reduce |
| クラス | class、extends、super |
| モジュール | import / export (ES Modules) |
| 非同期 | Promise、async / await |
| エラー処理 | try / catch / finally / throw |
変数宣言の使い分け
| キーワード | スコープ | 再代入 | 再宣言 | 用途 |
|---|---|---|---|---|
const | ブロック | 不可 | 不可 | 基本これを使う |
let | ブロック | 可 | 不可 | 変化する変数 |
var | 関数 | 可 | 可 | レガシー。新規コードでは避ける |
比較演算子の注意点
==は型変換ありの比較 (0 == "0"は true)。基本は使わない===は厳密比較。これを使うNaN === NaNは false。判定はNumber.isNaN(x)null == undefinedは true、null === undefinedは false
関数の3つの形
|
// 関数宣言 |
近年の重要な追加
- ES2015 (ES6): let/const、アロー関数、テンプレートリテラル、class、モジュール、Promise
- ES2017: async / await
- ES2020: オプショナルチェイン (
?.)、ぬる合体 (??)、BigInt - ES2021〜: 論理代入 (
??=)、Array#at、structuredClone (環境依存)
注意点
- 古いブラウザサポートが必要な場合はBabel + polyfillを併用
- 厳密モード
'use strict';を冒頭に書く (モジュールでは自動で有効) - 本番コードでは TypeScript も検討。型ミスをコンパイル時に検出可能
関連
- 親カテゴリ: JavaScript
子ページ
同階層のページ
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript で base URL を取得する方法|window.location.origin
- 4 YouTube Data API v3 エラー一覧|403・400・404 の原因と対処
- 5 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 6 3Dグラフィックスのソフト一覧|Blender・Metasequoiaと用途別の選び方
- 7 Spring Frameworkのアノテーション一覧
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- Visual Studio「デザイナーを表示できません」エラーの原因と対処 2026-10-28 12:06:00
- SSH 認証に失敗しました。再試行してください の対処 2026-10-28 12:06:00
- SSH2 秘密鍵の読み込みに失敗しました の原因と対処 2026-10-28 12:06:00
- TeraTerm のよくあるエラーと対処法完全ガイド — Connection refused / 2026-10-28 12:06:00
- Visual Studio エラー一覧|コンパイルエラー・警告の確認方法と対処 2026-10-28 11:39:57
- Whitelabel Error Page の原因と消し方|Spring Boot のエラーページ 2026-10-28 11:39:57
- Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法 2026-10-28 11:39:57
- SQL WHERE 句完全ガイド 2026-10-28 11:39:57
- SQL JOIN 完全ガイド (INNER/LEFT/RIGHT/FULL OUTER) 2026-10-28 11:39:57
- tomcat の起動 / 停止ログと catalina.log・catalina.out の違い 2026-10-28 10:24:23
- Tomcat の起動確認方法 5 つ|localhost:8080・ポート・プロセス・ログ 2026-10-28 10:24:23
- Oracle 19c COMMITの使い方: 暗黙コミット・自動確定・応答不明時の確認 2026-10-28 09:59:09
- Oracle 19c DELETE文|削除対象の確認・COMMIT前の判断・ROLLBACKの条件 2026-10-28 09:59:09
- Oracle 19c INSERT文|INSERT ALL・SELECT・RETURNINGとMERGEの使い分け 2026-10-28 09:59:09
- Oracle 19cのトランザクション制御|COMMIT・ROLLBACK・分離レベルと接続設定 2026-10-28 09:59:09