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

457
Vistas
No se puede consultar el parámetro de matriz desde la URL

¿Cómo encontrar el parámetro cuya clave es una matriz usando URLSearchParams ?

 // Browser url: const url = http://localhost:4000/leads?status%5B0%5D=1&page=2; // What my code does: const urlParams = new URLSearchParams(window.location.search); const myParam = (urlParams.get('status%5B0%5D') || urlParams.get(key)) || ""; // Let's focus on the below myParam: urlParams.get('status%5B0%5D') // or urlParams.get('status[]') // or urlParams.has('status%5B0%5D') // or urlParams.has('status[]') // or urlParams.getAll('status%5B0%5D') // or urlParams.getAll('status[]')

...no tiene nada útil. El objetivo es eliminar una clave de la url. Las claves pueden ser una cadena, un status o una matriz, status%5B0%5D . Estoy escribiendo una función que puede encontrar la clave, ya sea una cadena o una matriz. ¿Cómo es que cualquier cosa que haga no tiene impacto? ¿Me estoy perdiendo de algo?

He mirado a continuación y nada funciona:

 // Copyright (c) Microsoft Corporation. All rights reserved. // ... interface URLSearchParams { /** Appends a specified key/value pair as a new search parameter. */ append(name: string, value: string): void; /** Deletes the given search parameter, and its associated value, from the list of all search parameters. */ delete(name: string): void; /** Returns the first value associated to the given search parameter. */ get(name: string): string | null; /** Returns all the values association with a given search parameter. */ getAll(name: string): string[]; /** Returns a Boolean indicating if such a search parameter exists. */ has(name: string): boolean; /** Sets the value associated to a given search parameter to the given value. If there were several values, delete the others. */ set(name: string, value: string): void; sort(): void; /** Returns a string containing a query string suitable for use in a URL. Does not include the question mark. */ toString(): string; forEach(callbackfn: (value: string, key: string, parent: URLSearchParams) => void, thisArg?: any): void; }
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Si puede controlar la URL, puede escribir una URL como esta:

some-url?status=status1&status=status2&status=status3

Luego puede hacer .getAll('status') que devuelve una matriz.

about 4 years ago · Juan Pablo Isaza Denunciar

0

Parece que tienes que decodificar el URI antes de usarlo

 var url = new URL(decodeURI('http://localhost:4000/leads?status%5B0%5D=1&page=2;')); console.log(url.search); // '?status[0]=1&page=2;' console.log(url.searchParams.get('status[0]')) // '1' console.log(url.searchParams.getAll('status[0]')) // ['1'] Array.from(url.searchParams.entries()).forEach( console.log ) // ['status[0]', '1'] // ['page', '2;']
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