Estoy empezando a aprender las API de ubicación, como la URL de redirección en javascript y no puedo entender las siguientes tres líneas. ¿Puede alguien explicarme?
let windowUrl = new URLSearchParams(window.location.search); const queryString = window.location.href; const firstParam = queryString.substring(queryString.lastIndexOf("?") + 1).split("=")[0];La primera línea es inútil. Como puede ver, windowUrl nunca se usa.
Las dos líneas siguientes:
window.location.href no es más que la URL que ve en la barra de ubicación de su navegador. Di, https://www.youtube.com/watch?v=123456
así que queryString = "https://www.youtube.com/watch?v=123456"
lo que hace la segunda línea es tomar todo lo que viene después de "?" en esa cadena. Entonces v=123456
Luego, divide v=123456 por "=" como separador. Entonces, finalmente obtienes 123456 .
Ahora, todo lo anterior es bastante bárbaro, ya que podrías obtener el valor del parámetro "v" de esta manera:
let url = new URL(window.location.href); let v = url.searchParams.get("v");URL es una interfaz que, digamos, "analizará" una URL y le brindará métodos para analizarla convenientemente, como el método searchParams y más.
let windowUrl = new URLSearchParams(window.location.search) ==> obteniendo parámetros de URL de la url. Por ejemplo, sitio web.com/? hola=1
const queryString = window.location.href; ===> obtener la URL de su página actual.
const firstParam = queryString.substring(queryString.lastIndexOf("?") + 1).split("=")[0]; ===> Manipulación de cadenas para obtener el primer parámetro de la URL. Abriría la herramienta de desarrollo y jugaría con ella, para tener la sensación.
P.ej:
const x = "https://stackoverflow.com/questions/69835761/js-url-location-can-someone-explain/?hello=1" const x = "https://stackoverflow.com/questions/69835761/js-url-location-can-someone-explain/?hello=1" console.log(x)Resultado: 'hola'
Descripción en línea el código:
// for Example: https://stackoverflow.com/questions/69835761/js-url-location-can-someone-explain?search=hello windowUrl = new URLSearchParams(window.location.search); // URLSearchParams object that helps you to provide data to the query url // window.location.search will return the current search query from your url queryString = window.location.href; // the current url: in this case: https://stackoverflow.com/questions/69835761/js-url-location-can-someone-explain?search=hello firstParam = queryString.substring(queryString.lastIndexOf("?") + 1).split("=")[0] // you filter or prase the value from the query stringPero puedes tenerlo más fácil, como ya escribió @resle.
// get the current url const uri = new URL(window.location.href); const quersValue = uri.searchParams.get("search"); // output : hello