目次
はじめに:JavaScriptの「道具箱」を開く
JavaScriptでプログラミングを始めると、すぐに遭遇する多数の機能。
その多くは「自分で最初から作る」ものではなく、言語そのものが提供する便利なオブジェクトたちです。
これが「組み込みオブジェクト(Built-in Objects)」であり、言語の基盤となるツール箱のような存在です。
たとえば「乱数を出す」「今日の日付を取得する」「文字列を大文字に変換する」──こうした処理を、わざわざ自分で一から作らなくても、組み込みオブジェクトが用意してくれています。
この記事では、この“道具箱”の中から、特によく使う代表的な組み込みオブジェクトをわかりやすく紹介し、「なぜ使えるのか」「どう使うのか」「実務での使い方は?」まで流れるように解説します。
1. 組み込みオブジェクトとは何か?
JavaScriptの組み込みオブジェクトとは、「言語仕様の中であらかじめ定義されていて、どのコードからでも使えるオブジェクト」のことです。
たとえば以下のようなものが含まれます:
Math:数学的な計算を補助する機能Date:日時・時間を操作する機能String:文字列を扱うための機能Array:複数の値をまとめて扱うリスト機能Object:すべてのオブジェクトの基本になる機能 など
これらを知ることで、「自分で全部作らなくても、言語が用意しているものを使える」というメリットを最大限に活かせます。
では、実際に代表例を見ていきましょう。
2. 代表的な組み込みオブジェクトと使い方
 2-1. Math
数値を扱うときによく使う「計算の道具箱」のようなオブジェクトです。
console.log(Math.random());         // 0.0~1.0未満の乱数
console.log(Math.floor(4.7));      // 4(小数点以下を切り捨て)
console.log(Math.max(5, 12, 3));   // 12(複数の値の最大値)
実務ヒント:
乱数を使ってテストデータを生成したり、最大値・最小値を求めたいときに重宝します。
 2-2. Date
日付や時間を扱うためのオブジェクト。タイムスタンプの取得、フォーマット、演算など幅広く使われます。
const now = new Date();
console.log(now.getFullYear());     // 例:2025
console.log(now.toLocaleDateString()); // 例:“2025/10/26”
実務ヒント:
ログを残す、期限をチェックする、ユーザーの登録日時を記録するなど、日時処理はほぼ必須です。
 2-3. String
文字列を操作するための機能が豊富にあるオブジェクトです。
const s = "hello world";
console.log(s.toUpperCase());      // "HELLO WORLD"
console.log(s.includes("world"));  // true
console.log(s.split(" "));         // ["hello", "world"]
実務ヒント:
入力文字列のチェック・フォーマット変換・パース処理などで頻出します。
 2-4. Array
複数の値をまとめて操作するための「リスト」構造を支えるオブジェクトです。
const arr = [3, 1, 4, 1, 5];
console.log(arr.length);                // 5
console.log(arr.sort((a,b)=>a-b));     // [1,1,3,4,5]
console.log(arr.filter(n => n > 2));   // [3,4,5]
実務ヒント:
データ一覧の処理・ソート・フィルタ・変換など、配列操作はWeb開発で超頻出です。
 2-5. Object
すべてのオブジェクトのベースとなる機能を提供しています。プロパティの列挙・コピー・マージなどで使えます。
const base = { a: 1, b: 2 };
const extra = { b: 3, c: 4 };
const merged = Object.assign({}, base, extra);
console.log(merged); // { a:1, b:3, c:4 }
console.log(Object.keys(merged)); // ["a", "b", "c"]
実務ヒント:
設定データのマージや、動的なキー取得など、柔軟なデータ操作に役立ちます。
3. 組み込みオブジェクトを「どう使うか」実践編
3-1. テストデータをサクッと作る
const randomScores = Array.from({ length: 5 }, () => Math.floor(Math.random() * 100));
console.log(randomScores); // 例:[23, 87, 45, 12, 68]
3-2. 登録日時を「○年前形式」で表示
const created = new Date("2023-05-10");
const now = new Date();
const yearsAgo = now.getFullYear() - created.getFullYear();
console.log(`登録から${yearsAgo}年経過`);
3-3. ユーザー入力のクリーンアップ
const input = "  Hello JavaScript  ";
const cleaned = input.trim().toLowerCase();
console.log(cleaned); // "hello javascript"
4. よくある「初心者がつまずくポイント」
- NaN(Not-a-Number) を扱う 
console.log(Math.max()); // -Infinity(意外とこうなる)→ 必要な引数がないと意図しない結果になることも。 - Dateの月が0始まり 
const d = new Date(2025, 0, 1); console.log(d.getMonth()); // 0 ⇒ 1月 - Arrayのsort()は文字列として比較される 
console.log([10,2,30].sort()); // [10,2,30](意図した順にならない)→ 数値ソートするなら比較関数を渡す必要あり。 - Object.assign()は浅いコピー
ネストされたオブジェクトは元オブジェクトも変更されることがあります。深いコピーには別の対応が必要。 
組み込みオブジェクトを知ることで、「ゼロから機能を作る」必要がほとんどなくなります。
言語が用意してくれている道具を上手に使いこなせれば、コードもシンプルに、バグも減ります。
次は、この道具箱を使って「ブラウザそのものを操作する世界」へと進みましょう。

	