0

==の代わりに が使用されているコードをチェックしていますが、次の===行を変更しています。

if(window.location == 'app:/test.html')

これに:

if(window.location === 'app:/test.html')

ブロックが実行されなくなります。

正しいアプローチは何ですか?

4

1 に答える 1

2

その理由は===、内容だけでなく種類も一致するからです。

window.locationほとんどの場合、のように動作しますstringが、実際にはLocationオブジェクトです。

を変更してプロパティifを確認できます。これは次のとおりです。hrefstring

if(window.location.href === 'app:/test.html')

その後、コードは意図したとおりに機能します。

MDN には、読む価値のある適切な記事があります。window.location

于 2013-09-26T03:59:45.537 に答える