我需要来自网址的哈希值...
var hash = window.location.hash;
那么如何摆脱#
签名?
答案 0 :(得分:11)
就这么简单。
var hash = window.location.hash.substr(1)
还有这两个返回完全相同:
var hash = window.location.hash.slice(1)
var hash = window.location.hash.substring(1)
稍后将 String.slice()
添加到规范中,尽管这可能不重要。
如下所述使用替换也是一种选择。
如果window.location.hash
字符串为空,这些选项都不会抛出错误或警告,所以这实际上取决于您的偏好使用什么。
答案 1 :(得分:3)
你可以这样做 -
hash = hash.replace(/^#/, '');
答案 2 :(得分:1)
切掉第一个字符:
var hash = window.location.hash.slice(1);
答案 3 :(得分:0)
你可以简单地做
var hash = window.location.hash.slice(1);
请注意,如果该位置没有哈希值,则不会产生错误,只会返回""
。
答案 4 :(得分:0)
window.location.href.substr(0, window.location.href.indexOf('#'))
会做到这一点