URL()

URL() コンストラクターは、パラメーターによって定義された URL を表す、新しく生成された URL オブジェクトを返します。

与えられたベース URL または結果の URL が有効な URL でない場合、JavaScript の TypeError 例外がスローされます。

註: この機能は Web Workers 内で利用可能です。

構文

url = new URL(url, [base])

パラメーター

url
絶対 URL または相対 URL を表す USVStringurl が相対 URL の場合、base は必須であり、ベース URL として使用されます。url が絶対 URL の場合、指定された base は無視されます。
base Optional
url が相対 URL の場合に使用するベース URL を表す USVString。 指定しない場合のデフォルトは '' です。

: 既存の URL オブジェクトを base に使用することも可能で、オブジェクトの href プロパティにそれ自体を文字列化します。

例外

例外 説明
TypeError url (絶対 URL の場合) または base + url (相対 URL の場合) が、有効な URL ではありません。

// ベース URL
var m = 'https://developer.mozilla.org';
var a = new URL("/", m);                                // => 'https://developer.mozilla.org/'
var b = new URL(m);                                     // => 'https://developer.mozilla.org/'

        new URL('en-US/docs', b);                      // => 'https://developer.mozilla.org/en-US/docs'
var d = new URL('/en-US/docs', b);                     // => 'https://developer.mozilla.org/en-US/docs'
        new URL('/en-US/docs', d);                     // => 'https://developer.mozilla.org/en-US/docs'
        new URL('/en-US/docs', a);                     // => 'https://developer.mozilla.org/en-US/docs'
        
        new URL('/en-US/docs', "https://developer.mozilla.org/fr-FR/toto");
                                                       // => 'https://developer.mozilla.org/en-US/docs'
                                                       
        new URL('/en-US/docs', '');                    // '' は有効な URL ではないため、TypeError 例外が発生します
        new URL('/en-US/docs');                        // '/en-US/docs' は有効な URL ではないため、TypeError 例外が発生します
        new URL('http://www.example.com', );           // => 'http://www.example.com/'
        new URL('http://www.example.com', b);          // => 'http://www.example.com/'

        new URL("//foo.com", "https://example.com")    // => 'https://foo.com' (相対 URL を参照)

仕様

仕様 状態 コメント
URL
URL.URL() の定義
現行の標準 初期定義

ブラウザーの互換性

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung Internet
URL() constructorChrome 完全対応 19Edge 完全対応 12Firefox 完全対応 26IE 未対応 なしOpera 完全対応 15Safari 部分対応 6
補足
部分対応 6
補足
補足 In Safari 14 and earlier, calling the URL constructor with a base URL whose value is undefined causes Safari to throw a TypeError; see WebKit bug 216841.
WebView Android 完全対応 ≤37Chrome Android 完全対応 25Firefox Android 完全対応 26Opera Android 完全対応 14Safari iOS 部分対応 6
補足
部分対応 6
補足
補足 In Safari 14 and earlier, calling the URL constructor with a base URL whose value is undefined causes Safari to throw a TypeError; see WebKit bug 216841.
Samsung Internet Android 完全対応 1.5

凡例

完全対応  
完全対応
部分対応  
部分対応
未対応  
未対応
実装ノートを参照してください。
実装ノートを参照してください。

関連項目

  • 所属しているインターフェース: URL