特定のURLパスにアクセスしたときに実行したい関数がありますが、そのパスのさらに下に、スクリプトを実行したくない他のページがあります。例えば:
website.com/names **This is the only URL where the script should run**
website.com/names/24/places
website.com/names/648/groups
website.com/names/7340/questions
「/names/」に続く数字の長さは1〜nの範囲ですが、後者の3つの例は、URLがたどる可能性のある唯一のパスです。ユーザーが「website.com/names」ページにいるときにのみスクリプトを実行し、「pages」の後に何も表示しないようにします。今のところ、document.URL.indexOfに基づく「if」ステートメントとしての関数がありますが、少し面倒に感じます。
if(document.URL.indexOf("names") >= 0 && (document.URL.indexOf("places") == -1 && document.URL.indexOf("groups") == -1 && document.URL.indexOf("questions") == -1))
これは完全に正常に機能しますが、「if」ステートメントを作成するためのより良い/よりクリーンな方法があるのではないかと疑っています。現在の行を要約する方法、または同じことをより簡単な方法で、過度に複雑にすることなく実行する別のコードを使用する方法はありますか?