URL()

El constructor URL() devuelve un objeto URL recién creado que representa la URL definida por los parámetros.

Si la URL base dada o la URL resultante no son URL válidas, se lanza un DOMException  de tipo SYNTAX_ERROR.

Nota: Esta característica está disponible en Web Workers.

Sintaxis

url = new URL(url, [base])

Parámetros

url
Un USVString que representa una URL absoluta o relativa. Si url es una URL relativa, se requiere base, y se usará como URL base. Si url es una URL absoluta, se ignorará una base determinada.
base Optional
Un USVString representa la URL base a usar en caso de que la URL sea una URL relativa. Si no se especifica, el valor predeterminado es ''.

Nota: Aún puede usar un objeto URL existente para la base, que se enchufa al atributo  href del objeto.

Excepciones

Excepción Explicación
TypeError url (en el caso de URL absolutas) o base + url (en el caso de URL relativas) no es una URL válida.

Ejemplos

// Urls base
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', '');                    // Provoca una excepción TypeError ya que '' no es una URL válida
        new URL('/en-US/docs');                        // Provoca una excepción TypeError ya que '/en-US/docs' no es una URL válida
        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' (ver URL relativas)

Especificación

Especificación Estado Comentario
URL
La definición de 'URL.URL()' en esta especificación.
Living Standard Initial definition.

Compatibilidad del navegador

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome para AndroidFirefox para AndroidOpera para AndroidSafari en iOSSamsung Internet
URL() constructorChrome Soporte completo SiEdge Soporte completo 12Firefox Soporte completo 26IE Sin soporte ? — 11Opera Soporte completo SiSafari Soporte completo SiWebView Android Soporte completo SiChrome Android Soporte completo SiFirefox Android Soporte completo 26Opera Android Soporte completo SiSafari iOS Soporte completo SiSamsung Internet Android Soporte completo Si

Leyenda

Soporte completo  
Soporte completo
Sin soporte  
Sin soporte

Ver también

  • La interfaz a la que pertenece: URL.