Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

194
Vistas
¿Cómo puedo obtener elementos específicos de una URL en Javascript?

Tengo una URL como https://www.some.com/something-else/?utm_source=Google-PageM&utm_medium=Paid&utm_campaign=SEM-Something . La solicitud era para extraer los valores de los UTM (Google-Page, Paid, SEM-Somethig) para enviarlos en una solicitud posterior. En realidad estoy usando este código Javascript:

 const utmSource = location.href.replaceAll('?', '$'). replaceAll('&', '$'). split('$').filter(utm => utm.includes('utm_source')). map(utm => utm.split('=')).flat()[1];

Para cada UTM (utm_source, utm_campaign y utm_medium) pero creo que tal vez sea una mejor manera de hacer esto.

Hay una mejor manera de hacerlo?

¡Gracias a todos!

about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

¿Qué tal convertirlo a una URL y obtener searchParams ?

 const url = new URL("https://www.some.com/something-else/?utm_source=Google-PageM&utm_medium=Paid&utm_campaign=SEM-Something"); console.log(url.searchParams.get("utm_medium"));

Para obtener todos los searchParams :

 const url = new URL("https://www.some.com/something-else/?utm_source=Google-PageM&utm_medium=Paid&utm_campaign=SEM-Something"); const params = new URLSearchParams(url); url.searchParams.forEach(function (val, key) { console.log(key,val) });

obtener params comienza con 'utm_':

 const url = new URL("https://www.some.com/something-else/?utm_source=Google-PageM&utm_medium=Paid&utm_campaign=SEM-Something"); const params = new URLSearchParams(url); const paraobject ={} url.searchParams.forEach(function (val, key) { if(key.startsWith("utm_")) paraobject[key] = val }); console.log(paraobject) console.log(paraobject["utm_source"])

about 4 years ago · Juan Pablo Isaza Denunciar

0

Hay muchas formas de obtener los parámetros de consulta . Luego solo buscaría el prefijo utm_ , algo como esto:

 const url = 'utm_source=Google-PageM&utm_medium=Paid&utm_campaign=SEM-Something'; const params = new URLSearchParams(url); let utmParams = {}; for (const [key, val] of params) { // check for prefix if (key.startsWith('utm_')) { // add to a new object array utmParams[key] = val; } } console.log(utmParams);

about 4 years ago · Juan Pablo Isaza Denunciar

0

¿Solo quieres los valores de los parámetros? Supongo que desea tanto la clave como el valor si asiste para usarlos en una publicación. Una forma de obtener todos los usm_* (con clave y valores) es así:

 const url = new URL("https://www.some.com/something-else/?utm_source=Google-PageM&utm_medium=Paid&utm_campaign=SEM-Something"); const urlParams = new URLSearchParams(url.search); const utmParams = Array.from(urlParams.entries()).filter(param => param[0].startsWith("utm")); /* utmParams: [Array(2), Array(2), Array(2)] 0: ['utm_source', 'Google-PageM'] 1: ['utm_medium', 'Paid'] 2: ['utm_campaign', 'SEM-Something'] */

Luego, si solo desea obtener las claves o valores:

 const utmKeys = utmParams.map(key => key[0]); const utmValues = utmParams.map(value => value[1]); /* utmKeys: ['utm_source', 'utm_medium', 'utm_campaign'] */ /* utmValues: ['Google-PageM', 'Paid', 'SEM-Something'] */
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda