¿Por qué me estoy poniendo ...
TypeError no detectado: string.split no es una función
... cuando corro ...
var string = document.location;
var split = string.split('/');
javascript
jquery
split
Eric
fuente
fuente

document.locationes un objeto. Prueba:var string=document.location.hrefRespuestas:
Cambia esto...
a esto...
Esto se debe a que
document.locationes un objeto de ubicación . El valor predeterminado.toString()devuelve la ubicación en forma de cadena, por lo que la concatenación lo activará.También puedes usar
document.URLpara obtener una cadena.fuente
toString()lugar de la concatenación hacky?+ ''es un truco bastante común para la coacción cadena, pero algunas personas prefieren eltoString()método. No lo consideraría más peligroso que usar el unario+para la conversión de números.parseInt()yparseFloat(). También hayNumber(). El+es más corta, por supuesto, pero menos legible para alguien no acostumbrado a hacky código o con menos experiencia.+ ''método no cambia nada para mí en el navegador Chrome, pero lotoString()hace.my_string + "".split()? Si es así, necesita parens ya que+tiene una precedencia menor que.. Así que así:(my_string + "").split()tal vez
asumiendo que quieres la URL actual
fuente
ejecuta esto
tu quieres
document.location.toString()odocument.location.hreffuente
document.locationno es una cuerda.Probablemente quieras usar
document.location.hrefo en sudocument.location.pathnamelugar.fuente
En clausula si, usar
(). Por ejemplo:fuente