カテゴリ: JavaScript 更新日: 2026/03/18

JavaScriptでURLを分解・解析する方法を徹底解説!URLオブジェクトの使い方を初心者向けにやさしく説明

JavaScriptでURLを分解・解析する方法(URLオブジェクト)
JavaScriptでURLを分解・解析する方法(URLオブジェクト)

先生と生徒の会話形式で理解しよう

生徒

「JavaScriptでURLを分解するってどういうことですか?ホームページの住所を分けるってことですか?」

先生

「その通りです。URLとはインターネット上の住所のことです。JavaScriptにはURLオブジェクトという便利な機能があり、URL解析やパラメータ取得が簡単にできます。」

生徒

「文字列を自分で切り分けなくてもいいんですか?」

先生

「はい。URLオブジェクトを使えば、ドメイン名やパス名、クエリパラメータなどを安全に取り出せます。では基礎から学んでいきましょう。」

1. URLとは何かをやさしく理解しよう

1. URLとは何かをやさしく理解しよう
1. URLとは何かをやさしく理解しよう

URLとはインターネット上の住所を表す文字列です。例えば検索サイトやネット通販のページを開くときに表示される長い文字列がURLです。正式にはユニフォームリソースロケータと呼ばれます。

URLは大きく分けるとプロトコル、ドメイン、パス、クエリパラメータ、ハッシュなどで構成されています。プロトコルとは通信方法のことで、httpsなどが該当します。ドメインはサイトの名前です。パスはページの場所を示します。クエリパラメータは検索条件のような追加情報です。

JavaScriptでURL分解やURL解析を行うことで、現在のページ情報を取得したり、パラメータを読み取って画面表示を変えることができます。これはフロントエンド開発やWebアプリ開発で非常に重要な技術です。

2. JavaScriptのURLオブジェクトとは

2. JavaScriptのURLオブジェクトとは
2. JavaScriptのURLオブジェクトとは

JavaScriptにはURLオブジェクトという標準機能があります。これはURLを分解して、それぞれの部分をプロパティとして扱える仕組みです。

初心者の方はオブジェクトという言葉に戸惑うかもしれません。オブジェクトとはデータをひとまとめにした箱のようなものです。その箱の中にプロトコルやホスト名などが整理されて入っています。

実際にURLオブジェクトを作成してみましょう。


const url = new URL("https://example.com/products/list?id=10&category=book");

console.log(url);

このようにnew URLと書くことでURL解析ができます。これだけでURL分解の準備が完了します。

3. プロトコルやドメインを取得する方法

3. プロトコルやドメインを取得する方法
3. プロトコルやドメインを取得する方法

URLオブジェクトを使うと、プロトコルやドメイン名を簡単に取得できます。これは文字列操作よりも安全で正確です。


const url = new URL("https://example.com/products/list?id=10");

console.log(url.protocol);
console.log(url.hostname);
console.log(url.pathname);

https:
example.com
/products/list

protocolは通信方式、hostnameはドメイン名、pathnameはページの場所です。Web制作やJavaScript学習で頻出する重要なプロパティです。

4. クエリパラメータを取得する方法

4. クエリパラメータを取得する方法
4. クエリパラメータを取得する方法

クエリパラメータとは、URLの後ろに付く検索条件のことです。例えばidやcategoryのような情報です。JavaScriptではsearchParamsを使って取得します。


const url = new URL("https://example.com/products/list?id=10&category=book");

const id = url.searchParams.get("id");
const category = url.searchParams.get("category");

console.log(id);
console.log(category);

10
book

searchParamsはクエリパラメータ専用の便利な機能です。URLパラメータ取得を行うときに必須の知識です。Webアプリ開発ではログイン情報や検索条件を読み取る場面でよく使われます。

5. パラメータを追加や変更する方法

5. パラメータを追加や変更する方法
5. パラメータを追加や変更する方法

URLオブジェクトは取得だけでなく変更もできます。例えばページ番号を追加する場合です。


const url = new URL("https://example.com/products/list");

url.searchParams.set("page", "2");

console.log(url.toString());

https://example.com/products/list?page=2

setを使うとパラメータを追加または上書きできます。deleteを使えば削除も可能です。これにより動的なページ遷移や検索機能の実装が簡単になります。

6. 現在のページのURLを解析する方法

6. 現在のページのURLを解析する方法
6. 現在のページのURLを解析する方法

ブラウザで実行している場合は、window.locationを使って現在のURLを取得できます。それをURLオブジェクトに渡すことで解析できます。


const currentUrl = new URL(window.location.href);

console.log(currentUrl.hostname);
console.log(currentUrl.search);

これにより今開いているページのドメインやクエリ情報を取得できます。Webサイト制作やフロントエンド開発で非常に役立つ知識です。

7. 文字列操作との違いとURLオブジェクトの利点

7. 文字列操作との違いとURLオブジェクトの利点
7. 文字列操作との違いとURLオブジェクトの利点

以前はsplitなどの文字列操作でURL分解を行う方法もありました。しかしこの方法は構造が変わると壊れやすく、安全性が低いという欠点があります。

URLオブジェクトを使うことで正確なURL解析が可能になり、保守性や可読性が向上します。特に初心者の方は標準機能を活用することでエラーを防ぎやすくなります。

JavaScriptでURL解析を行う場合は、URLオブジェクトを使う方法が現代の主流です。Webアプリケーション開発、フロントエンド開発、動的サイト制作において必須スキルといえます。

8. URL解析を理解するとできること

8. URL解析を理解するとできること
8. URL解析を理解するとできること

URL分解ができるようになると、検索機能の実装、ページネーション制御、アクセス解析連携、ログイン判定などさまざまな応用が可能になります。

JavaScript初心者の方でもURLオブジェクトを理解すれば、Web開発の基礎が一気に広がります。難しく見えるURLも、仕組みを知ればただの部品の集まりです。

JavaScriptでURLを分解解析する方法をしっかり身につけることで、実務でも役立つ知識になります。基礎を大切にしながら少しずつ理解を深めていきましょう。

まとめ

まとめ
まとめ

今回はJavaScriptでURLを分解解析する方法について、URLオブジェクトを中心にやさしく解説しました。URLとはインターネット上の住所であり、プロトコル、ドメイン、パス、クエリパラメータ、ハッシュなどの要素で構成されています。JavaScriptの標準機能であるURLオブジェクトを使うことで、これらの要素を安全かつ正確に取得できます。文字列操作によるURL分解と比べて、可読性や保守性が高く、エラーを防ぎやすい点が大きな利点です。

URL解析はフロントエンド開発やWebアプリ開発において非常に重要な基礎知識です。例えば検索機能の実装ではクエリパラメータ取得が欠かせませんし、ページネーションではパラメータの追加や変更が必要になります。また現在のページURLを解析して表示内容を切り替える処理もよく行われます。JavaScript初心者の方でもURLオブジェクトの基本を理解すれば、実践的なWebサイト制作に大きく近づくことができます。

特に重要なのはprotocol、hostname、pathname、searchParamsといったプロパティです。これらを正しく使えるようになることで、URLパラメータ取得や動的画面制御が簡単になります。URL解析の仕組みを理解することは、JavaScript学習の中でも実務に直結する重要なステップです。基礎を丁寧に押さえながら、実際にコードを書いて動作を確認することが理解への近道です。

サンプルプログラムで総復習

ここでJavaScriptのURLオブジェクトを使った総合的なURL解析の例を確認しましょう。URL分解、クエリパラメータ取得、パラメータ変更までを一通り行います。


const url = new URL("https://example.com/shop/items?category=food&id=25");

console.log("プロトコル:", url.protocol);
console.log("ドメイン:", url.hostname);
console.log("パス:", url.pathname);

const category = url.searchParams.get("category");
const id = url.searchParams.get("id");

console.log("カテゴリー:", category);
console.log("商品番号:", id);

url.searchParams.set("page", "3");

console.log("変更後のURL:", url.toString());

プロトコル: https:
ドメイン: example.com
パス: /shop/items
カテゴリー: food
商品番号: 25
変更後のURL: https://example.com/shop/items?category=food&id=25&page=3

このようにJavaScriptでURLを分解解析する方法を理解すれば、Webアプリケーション開発で必要となるURLパラメータ操作が自在に行えるようになります。URLオブジェクトは標準機能であるため、特別なライブラリを導入する必要もありません。JavaScript初心者でもすぐに実践できる点が魅力です。

また現在のページURLを解析する場合はwindow.location.hrefを利用し、それをURLオブジェクトに渡すことで同様に扱えます。これによりログイン判定、検索条件の保持、アクセス解析連携などさまざまな応用が可能になります。URL解析の基礎を確実に身につけることで、より高度なフロントエンド開発へとステップアップできます。

先生と生徒の振り返り会話

生徒

「JavaScriptでURLを分解する意味がよくわかりました。文字列を自分で切るよりもURLオブジェクトを使うほうが安全なんですね。」

先生

「その通りです。URL解析はWeb開発の基礎です。protocolやhostname、pathname、searchParamsを正しく理解することが大切です。」

生徒

「クエリパラメータ取得やパラメータ追加も簡単にできました。これなら検索機能やページ番号の制御もできそうです。」

先生

「はい。URL分解とURLパラメータ操作ができれば、動的なWebアプリ開発がぐっと現実的になります。基礎を何度も復習して、実際に手を動かしてみてください。」

生徒

「JavaScriptでURLを解析する方法を理解できました。これからはURLを見るたびに構造を意識してみます。」

先生

「とても良い姿勢です。URLの構造を理解することはフロントエンド開発の第一歩です。着実に知識を積み重ねていきましょう。」

関連記事:
カテゴリの一覧へ
新着記事
New1
JavaScript
JavaScriptの配列を逆順にする方法(reverseメソッド活用)
New2
JavaScript
JavaScriptの配列の並べ替え(sortメソッド)の基本とカスタマイズ
New3
TypeScript
TypeScriptとJSDocを併用して型推論を強化!初心者向けガイド
New4
JavaScript
JavaScriptの配列の長さ(lengthプロパティ)を理解しよう
人気記事
No.1
Java&Spring記事人気No1
JavaScript
JavaScriptのインストール方法まとめ!Windows・Mac・Linux別にステップ解説
No.2
Java&Spring記事人気No2
TypeScript
TypeScriptの型定義ファイル管理を徹底解説!読み込み順序とDefinitelyTypedの仕組み
No.3
Java&Spring記事人気No3
TypeScript
TypeScriptで型定義を拡張する方法を徹底解説!モジュール拡張とDefinitelyTypedの使い方
No.4
Java&Spring記事人気No4
TypeScript
TypeScript型定義ファイル(d.ts)の分割構成を徹底解説!大規模開発でも迷わない管理術
No.5
Java&Spring記事人気No5
JavaScript
JavaScriptプログラムの実行方法まとめ!ブラウザ・Node.js・コンソールの使い方
No.6
Java&Spring記事人気No6
TypeScript
TypeScript学習におすすめの無料教材・リファレンスサイト【初心者向け】
No.7
Java&Spring記事人気No7
TypeScript
TypeScriptで型定義を参照する方法!triple-slash directives(三斜線ディレクティブ)を徹底解説
No.8
Java&Spring記事人気No8
TypeScript
TypeScriptでコメントを書く正しい書き方と使い分け【初心者向けにやさしく解説】