Esta respuesta aborda el caso más general donde pageUrl contiene varios parámetros y quizás un ancla; por ejemplo,
…? MainColour = grassgreen & bgColour = white # top
En aras de la flexibilidad, aquí hay una forma * de lidiar con tales URL. Suponiendo que tenemos una URL del formulario
- ¿Cuál es la diferencia entre iniciar sitios web y comenzar sitios web usando WP?
- ¿Hay algún tutorial mejor sobre desarrollo de software con Python?
- ¿Cuáles son algunos sitios web como QVC y cómo se usan?
- ¿Te sientes culpable cuando tu proyecto de desarrollo web tiene errores?
- ¿Qué tipo de sitios web debe hacer un principiante para practicar su HTML y CSS?
pageUrl = “[dirección base]? [lista de parámetros] # [ancla]”;
podemos extraer la lista de pares de nombre / valor de parámetro de esta manera (se muestra paso a paso para mayor claridad):
var tmp1 = url.split (‘?’) [1]; // lista de parámetros + ancla
var tmp2 = tmp1.split (‘#’) [0]; // lista de parámetros
var params = tmp2.split (‘&’); // lista de parámetros (como una matriz)
var plist = params.map (function (e) {return e.split (‘=’);});
Al final de esto, plist será una matriz de matrices, así:
plist [0] = [“mainColour”, “grassgreen”];
plist [1] = [“bgColour”, “blanco”];
// etc.
* Otras respuestas también han abordado este caso más general de otras maneras. También vale la pena señalar que algunos marcos JS incluyen funciones especiales que simplifican los parámetros de análisis desde una URL.
Actualización: vea los comentarios para obtener una forma de convertir la lista de parámetros en un objeto (matriz asociativa) en lugar de en una matriz de pares de nombre / valor.
¿Cómo se obtiene el final de una variable de JavaScript?
Entonces, tengo la variable “pageUrl”, que está configurada como “website [punto] com / page? MainColour = grassgreen”. De esta variable, ¿cómo puedo obtener solo “grassgreen”? Creo que debería hacer algo con substr ()