Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

202
Visualizações
¿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 Respostas
Responde à pergunta

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 Relatório

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 Relatório

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 Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda