Javascript 在if(window.location=';x';)中将==更改为===会导致块不执行
我正在检查我的代码是否使用了Javascript 在if(window.location=';x';)中将==更改为===会导致块不执行,javascript,equals-operator,triple-equals,Javascript,Equals Operator,Triple Equals,我正在检查我的代码是否使用了=而不是==,但更改了此行: if(window.location == 'app:/test.html') 为此: if(window.location === 'app:/test.html') 导致不再执行该块 正确的方法是什么?原因是=与类型和内容相匹配 window.location在大多数情况下就像一个字符串,但实际上是一个位置对象 您可以更改if以检查href属性,该属性是字符串: if(window.location.href === 'app:/
=
而不是==
,但更改了此行:
if(window.location == 'app:/test.html')
为此:
if(window.location === 'app:/test.html')
导致不再执行该块
正确的方法是什么?原因是
=
与类型和内容相匹配
window.location
在大多数情况下就像一个字符串
,但实际上是一个位置
对象
您可以更改if
以检查href
属性,该属性是字符串
:
if(window.location.href === 'app:/test.html')
然后,您的代码将按预期工作
MDN有大约窗口。位置值得一读