📂

JavaScriptで現在表示しているファイル名を取得する

に公開

結論

window.location.pathname.split("/").pop();

仕組み

  1. pathnameプロパティを使ってパス名を取り出す

    pathnameの対象範囲(出典:MDN Web Docs
  2. パス名を”/”区切りにして、一番最後の要素を取り出す

他の方法

windowを省略する

location.pathname.split("/").pop();

問題ないことが多いかと思いますが、関数の中で新しくlocationという変数を宣言した場合などに意図しない出力となる可能性もあります。明示的にwindow.locationと記述したほうがベターとのこと。
https://stackoverflow.com/questions/4709037/window-location-versus-just-location

pathnameプロパティの代わりにhrefプロパティを使う

window.location.href.split('/').pop();

pathnameと違ってURL全体の文字列が得られるので、クエリ(?以降の文字列)やフラグメント(#以降の文字列)が入る可能性がある場合は使えません。

windowオブジェクトの代わりにdocumentオブジェクトを使う

document.location.pathname.split('/').pop();

windowオブジェクトを使用した場合と同じ結果が得られます。
https://developer.mozilla.org/ja/docs/Web/API/Document/location

new URL(document.URL).pathname.split("/").pop();

冗長ですが、URL()コンストラクタdocument.URLの値を渡しても同じ結果になります。

Discussion