A1. 逆引き

「〜したい」から書き方を引く。詳しい説明は、右の列の章へ

📅 作成: 2026-10-09 / 更新: 2026-10-10

値と文字列

したいこと書き方章
変数を作るconst x = 1;(入れ直すなら let)03
値の型を調べるtypeof x ・ 配列は Array.isArray(x) ・ null は x === null03
文字列に値を埋め込む`${name}さん`03
含まれているか調べるs.includes("abc")03
一部を取り出すs.slice(開始, 終了)03
区切りで分けるs.split(",") ・ 改行は s.split(/\r?\n/)03
置き換えるs.replace("a", "b")(全部なら replaceAll)03
前後の空白を除くs.trim()13
見た目の文字数を数える[...s].length03
文字列を数値にするNumber(s) ・ 先頭だけなら parseInt(s, 10)04
数値でないか調べるNumber.isNaN(n)04
3 桁区切り ・ 小数の桁をそろえるn.toLocaleString() ・ n.toFixed(2)04
切り捨て ・ 四捨五入Math.floor(n) ・ Math.round(n)03

比較と条件

したいこと書き方章
等しいか比べるa === b ・ 違うか a !== b04
無いときに既定値を使うx ?? 既定値04
無いかもしれない先を読むobj.shop?.address04
条件で値を選ぶ条件 ? A : B04
値が渡されたか調べるx === undefined(if (x) は 0 や "" も偽になる)04

配列

したいこと書き方章
末尾に足す ・ 取り出すarr.push(x) ・ arr.pop()05
含まれているかarr.includes(x)05
1 つずつ処理するfor (const x of arr) { … } ・ 番号も要るなら arr.forEach((x, i) => …)05
各要素を変えた配列を作るarr.map((x) => x * 2)05
条件に合うものだけ選ぶarr.filter((x) => x > 0)05
条件に合う最初の 1 つarr.find((x) => x.id === id)05
合計するarr.reduce((sum, x) => sum + x, 0)05
数値を小さい順に並べる[...arr].sort((a, b) => a - b)05
コピーする ・ つなげる[...arr] ・ [...a, ...b]05
重なりを除く[...new Set(arr)](Set は同じ値を 1 つしか持たない入れ物)05
文字列につなぐarr.join(", ")05
配列の配列を 1 段にするarr.flat()13

オブジェクトと JSON

したいこと書き方章
作る ・ 読むconst o = { a: 1 }; ・ o.a ・ o[key]05
キーがあるか"a" in o05
キー ・ 値を全部取り出すObject.keys(o) ・ Object.values(o) ・ Object.entries(o)05
中身を取り出して変数にするconst { a, b } = o;05
コピーして一部を変える{ ...o, a: 2 }05
入れ子まで全部コピーするstructuredClone(o)05
JSON の文字列にする ・ 戻すJSON.stringify(o, null, 2) ・ JSON.parse(text)05

関数とクラス

したいこと書き方章
短い関数を書くconst f = (x) => x * 2;06
引数の既定値function f(x = 0) { … }06
いくつでも引数を受け取るfunction f(...args) { … }06
名前付きの引数のように渡すfunction f({ id, role = "guest" }) { … }06
値を複数返すreturn { min, max }; → const { min, max } = f();05
状態を持つ関数を作る関数を返す関数(クロージャ)09
クラスを作る ・ 継承するclass A { constructor() {} } ・ class B extends A {}08
外から触れないフィールド#count = 0;08
メソッドをコールバックに渡す() => obj.method() ・ obj.method.bind(obj)07

エラー ・ 非同期 ・ ファイル

したいこと書き方章
エラーを起こすthrow new Error("説明");10
エラーを受け取るtry { … } catch (e) { e.message } finally { … }10
自分のエラーを作るclass MyError extends Error { … } ・ e instanceof MyError10
少し待ってから実行するsetTimeout(() => { … }, ミリ秒)11
くり返し実行する ・ 止めるconst id = setInterval(f, ミリ秒) ・ clearInterval(id)09
await で待てるようにするnew Promise((resolve) => setTimeout(resolve, ミリ秒))11
結果を待つconst x = await f();(async 関数の中か .mjs の一番外側)11
複数を同時に待つawait Promise.all([f(), g()])11
ファイルを読む ・ 書くawait readFile(path, "utf8") ・ await writeFile(path, text)11
フォルダの一覧await readdir(path)11
別のファイルの関数を使うexport function f() {} ・ import { f } from "./x.mjs";10
スクリプトの隣のファイルを指すjoin(import.meta.dirname, "x.txt")12
コマンドラインの引数を受け取るprocess.argv.slice(2)13

画面(DOM)

したいこと書き方章
HTML からスクリプトを読み込む<script type="module" src="main.js"></script>14
手元のページをブラウザで開くローカルサーバを立てて http://localhost:… で開く(ダブルクリックの file:// では module が動かない)14
要素を 1 つ探すdocument.querySelector("#title")(無ければ null)15
要素をまとめて探すdocument.querySelectorAll(".item")15
文字を入れるel.textContent = text;(外から来た文字を innerHTML に入れない)15
クラスを付ける ・ 付いているか調べるel.classList.add("done") ・ el.classList.contains("done")15
クラスを付けたり外したりするel.classList.toggle("done")16
要素を作って足すconst li = document.createElement("li"); ・ list.append(li);15
要素を消すel.remove()15
近くの親を探すel.closest("li")15
要素に持たせた値を読む<li data-id="3"> → li.dataset.id(文字列)15

イベントとフォーム

したいこと書き方章
クリックに反応するbutton.addEventListener("click", () => { … });16
操作された要素を知るevent.target ・ 登録した要素は event.currentTarget16
たくさんの子の操作を親でまとめて受けるlist.addEventListener("click", (e) => { const li = e.target.closest("li"); … });16
既定の動き(ページの移動など)を止めるevent.preventDefault()16
1 回だけ反応する ・ 登録を外す{ once: true } ・ removeEventListener("click", onClick)(登録したのと同じ関数を渡す)16
入力欄の値を数で使うNumber(input.value)(value はいつも文字列)17
チェックされているかbox.checked17
フォームの送信を JavaScript で受け取るform.addEventListener("submit", (e) => { e.preventDefault(); const data = new FormData(form); … });17
入力のたびに表示を変えるinput.addEventListener("input", …) ・ 選択が変わったら "change"17

通信と保存

したいこと書き方章
サーバから JSON を受け取るconst res = await fetch(url); ・ const data = await res.json();18
サーバが失敗を返したか調べるif (!res.ok) throw new Error(`失敗: ${res.status}`);18
JSON を送るfetch(url, { method: "POST", headers: { "content-type": "application/json" }, body: JSON.stringify(o) })18
ブラウザにデータを残すlocalStorage.setItem(key, JSON.stringify(o)) ・ JSON.parse(localStorage.getItem(key))19
タブを閉じるまでだけ残すsessionStorage.setItem(key, value)19
どの保存先を使うか選ぶcookie ・ localStorage ・ sessionStorage ・ IndexedDB の比較19
日時を日本時間で表示するd.toLocaleString("ja-JP", { timeZone: "Asia/Tokyo" })19
URL の ? の後ろを読むnew URL(s).searchParams.get("q")19
クリップボードにコピーするawait navigator.clipboard.writeText(text)19