我想检查当前页面是否有锚点
所以我正在使用这个
var qs = window.location.hash;
然后检查qs是否不是空字符串
if (qs !== '') {
这是正确的方法吗?它似乎有用,但我在阅读有关JavaScript检查null / undefined / empty字符串的各种方法时感到困惑。
答案 0 :(得分:3)
window.location.hash
仅包含内页链接/锚点(遵循哈希(#
)符号的那些)window.location.search
包含?
前缀使用条件(if语句)很好。如果未填充该属性,则它将是一个空白字符串。
答案 1 :(得分:2)
是的,除了我选择document.location.hash
之外,这是一种正确合理的检查方式。
您可以查看if (!qs) { }
。使用!
可以涵盖所有可能的错误值。
答案 2 :(得分:1)
我建议:
var qs = window.location.hash;
if (typeof(qs) == 'string' && qs != '' && qs != '#')
请注意,正确使用的是window.location
,因为这是标准。 document.location
未标准化。 window.location in the standard.