Me falta algo para entender la diferencia de usar URLSearchParams y URL().searchParams. Mi código de prueba es (probando contra localhost):
let w = new URLSearchParams(window.location).get('origin'); let y = (new URL(window.location)).searchParams.get('origin');w devuelve http://localhost:5500
y devuelve nulo
Entonces, ¿cuál es la diferencia, ya que entendí que deberían devolver el mismo valor, solo la diferencia de cómo se define?
URLSearchParams crea una nueva instancia de objeto URLSearchParams.
En cuanto a la URL: crea y devuelve un objeto de URL que hace referencia a la URL especificada utilizando una cadena de URL absoluta o una cadena de URL relativa y una cadena de URL base.
Luego, al usar la propiedad de solo lectura searchParams, estoy accediendo al mismo objeto URLSearchParams pero desde esta propiedad no puedo modificarla, simplemente léala.
¿Puede indicarme la dirección para comprender la diferencia?