Window.location.pathnameを使用してURLを返すことができることはわかっていますが、URLを解析するにはどうすればよいですか?
私は次のようなURLを持っています: http:// localhost/messages/mine/9889 そして、「mine」が存在するかどうかを確認しようとしていますそのURLに?
したがって、「私の」がそのURLの2番目の部分である場合、それに基づいてifステートメントを記述したいと思います...
if(second argument == 'mine') { do something }
if ( location.pathname.split("/")[2] == "mine" ) { do something }
明らかに、splitによって返される配列に十分なアイテムがあるかどうかを確認する方が良いでしょう。
var a = location.pathname.split("/");
if ( a.length > 2 && a[2] == "mine" ) { do something }
配列インデックスはゼロベースですが、splitが「/ messages/mine/9889」を4つのアイテムの配列に分割するため、2番目の引数として参照するものを取得するために、インデックスとして2を指定することに注意してください。
["", "messages", "mine", "9889"]
jqueryがオプションの場合、次のことを実行できます。
$.inArray("mine", window.location.pathname.split("/"))
if (window.location.pathname.split("/")[2] == "mine") {
// it exists
};
window.location.pathnameは1日の終わりの文字列なので、通常の 文字列メソッド が適用されます。
これは非常に古いクエリですが、いくつかの検索でポップアップします。ここにメモを追加します。
url.indexOf('mine') !== -1
上記は、URLに文字列があるかどうかを確認するために使用する必要があります...パスを見つけるには、使用する方が良いでしょう。
var a = document.createElement('a');
a.href = url;
console.log(a.pathname);
// if url='http://localhost/messages/mine/9889'
// output will be /messages/mine/9889
これが時間を節約することを願っています
String.split( '/')関数を使用して、チェックするアイテムの配列を作成できます。それ以外の場合、URLを解析するいくつかのjQueryプラグインがあります。