2010-07-14 13 views

Respuesta

16

El objeto JavaScript de cadena simple tiene un método split.

'path1/path2'.split('/') 

'http://www.somesite.com/#path1/path2'.split('#').pop().split('/') 

-> ['path1', 'path2'] 

Sin embargo, para el segundo caso, no es generalmente una buena idea para hacer su propio análisis de la URL a través de la cadena o la piratería de expresiones regulares. Las URL son más complicadas de lo que piensas. Si usted tiene un objeto o un elemento location<a>, se puede recoger de forma fiable las partes de la URL de ella usando los , host, port, pathname, search y hash propiedades.

+0

+1 para usar pop()! – meo

1
var url = 'http://www.somesite.com/#path1/path2'; 
var arr = /#(.*)/g.exec(url); 

alert(arr[1].split('/')); 
1

no creo que es necesario utilizar jQuery para esto, Javascripts viejo y simple Split() método debe ayudar a salir.

Además, para su segunda cadena si usted está tratando con URL se puede echar un vistazo al objeto Location ya que esto le da acceso al puerto, etc. anfitrión

0

Puede utilizar el Javascript 'path1/path2'.split('/'), por ejemplo, . Te devuelve una matriz donde 0 es path1 y 1 es path2.

No hay necesidad de usar jQuery

2
var path1 = "path1/path2".split('/')[0]; 
var path2 = "path1/path2".split('/')[1]; 

para el segundo uno, si lo están recibiendo de su URL se puede hacer esto.

var hash = window.location.hash; 
var path1 = hash.split('#')[1].split('/')[0]; 
var path2 = hash.split('#')[1].split('/')[1]; 
Cuestiones relacionadas