JavaScript 分割 URL 时无法获取片段

标签 javascript url split

我的 JS 经验有限,我需要分割一个看起来像这样的字符串:

http://example.com/#!/about

进入http://example.com/和!/关于

不幸的是,我无法使用 PHP,并且无法解析 URL。对吗?

这就是我现在所拥有的:

<script type="text/JavaScript">
var newUrl = window.location.pathname;
var hash=newUrl.split('#');
var f=hash[1];
</script>

我可以对第三行执行此操作:

    var hash=newUrl.split('com'); 

然后计算哈希值,但问题是如果有人去

example.com/index.php/#!/about

因此,在此之后我必须将代码加倍。

有什么想法可以将 URL 分成以哈希为中心的两部分,而不必使用我刚才提到的内容吗?

最佳答案

.pathname 不包含哈希值。请改用 .hash 属性。使用substring去除前面的#字符。

var hash = location.hash.substring(1);

关于JavaScript 分割 URL 时无法获取片段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9348098/

相关文章:

javascript - 更改函数内的全局变量,以更改 setInterval 的第二个参数

Javascript,使用一个本地对象而不是许多本地变量

javascript - 如何将单击的元素转换为文本区域并返回?

java - 如何在 Java 中从 URL 中提取全名

java - 如何在 JavaScript 中访问 JSON 数组的元素?

java UTF-8 字符串

iis - SEO 友好 url 在 IIS 上给出 "A potentially dangerous Request.Path"

Java Regular Expression ReplaceAll with Regex 结果修剪定界符前后的空白

java - 递归地将字符串拆分为固定数量的单词 [Java]

javascript - 如何在 Javascript 中用括号 split() 字符串