MW211 EXIT

devlog
JavaScript/特定の文字以降を抜き出す
2014年04月30日
┌──────────────────────────────────────┐
│GETパラメータ部分のみ = (URLアドレス.match(/\?.*$/) || [''])[0];            │
└──────────────────────────────────────┘
URLアドレスからGETパラメータ部分のみをJavaScriptで抜き出す方法。
つまり「?」を境にその後ろを抜き出すってこと。
ついでに、「?」がなければ空文字という仕様も追加。

結構厄介だ(っていうかもっと簡単な方法がありそうだが)

match()メソッドで正規表現を使って抜き出す訳だが…。

問題1:結果が配列で返ってくる
  ということで、「[0]」を後ろにつけて配列の一番目の値だけ取得するようにする。

問題2:該当がない場合にはnullになる
  「null」は「''」とは違うという根本的な問題もあるが、
  「null」を配列とみなして「[0]」なんかをつけると例外が起きてしまうのが致命的。
  ってことで、「null」の場合は「''」に変換してあげなければならないが
  その後に配列として扱うことが見えているので「['']」と
  (一番目が空文字の)配列に変換してあげる深謀遠慮が必要。
  「null」判定は「||」によるOR条件付加で一発でできる。
分類:JavaScript