Descomponer una URL
Crea una función llamada que recibe una cadena (URL) como entrada. Descompón la cadena y devuelve un objeto con las siguientes propiedades:
- protocol: Este es el protocolo de la URL (p. ej., "http").
- ipAdress: Debe contener la dirección IP (si es válida) de la URL o
null. - subDomain: Debe contener el subdominio de la URL (p. ej., "www" o
null). - domainName: Debe contener el dominio sin el subdominio (p. ej., "google.com" o
null). - folderTree: Debe contener un arreglo de carpetas (p. ej., "www.google.com/test/image/index.html" ➞
["test", "image"]onull) - targetFile: Debe devolver el archivo de destino.
- p. ej. 1. "www.google.com/test/image" ➞ "image"
- p. ej. 2. "www.google.com/test/index.html" ➞ "index.html" o
null
- argumentsFile: Debe devolver los argumentos del archivo de destino.
- p. ej. "www.google.com/test/image?search=ok" ➞ "?search=ok" o
null
- p. ej. "www.google.com/test/image?search=ok" ➞ "?search=ok" o
Ejemplos
decomposeUrl("https://www.google.com/search/test.js?ok=1") ➞ {
protocol: "https",
ipAdress: null,
subDomain: "www",
domainName: "google.com",
folderTree: (1) […],
targetFile: "test.js",
argumentsFile: "?ok=1"
}
decomposeUrl("https://edabit.com/new/challenge") ➞ {
protocol: "https",
ipAdress: null,
subDomain: null,
domainName: "edabit.com",
folderTree: (1) […],
targetFile: "challenge",
argumentsFile: null
}
decomposeUrl("https://edabit.com/new/challenge/test.html") ➞ {
protocol: "https",
ipAdress: null,
subDomain: null,
domainName: "edabit.com",
folderTree: (2) […],
targetFile: "test.html",
argumentsFile: null
}Notas
N/A