Javascriptでパラメータを取得したり設定したりする
公開日:
最終更新日:
javascriptでパラメータ値を取得したり、設定したりする方法です。
ちなみにパラメータはurlの後ろにある【?…】ってやつです。
IE11対応ならletをvarに変えてください。
取得
パラメータを取得する方法です。
Javascript
1 2 3 4 5 6 7 |
let paramList = new Object; let param = location.search.substring(1).split('&'); let paramSplit; for (let i = 0; param[i]; i++) { paramSplit = param[i].split('='); paramList[paramSplit[0]] = paramSplit[1]; } |
解説
1 |
let paramList = new Object; |
取得して分けたパラメータを格納するオブジェクトを宣言
1 |
let param = location.search.substring(1).split('&'); |
パラメータの【?】以降を取得して【?】を除いて【&】で分割して配列に入れる
パラメータは【?aaa=aaa&bbb=bbb】って感じなので
1 2 3 4 5 |
let paramSplit; for (let i = 0; param[i]; i++) { paramSplit = param[i].split('='); paramList[paramSplit[0]] = paramSplit[1]; } |
【&】で分けたやつを【=】で分割してparamSplitに入れて、初めに宣言したparamListに連想配列として格納する
をparamで分けた回数分
設定
パラメータを設定する方法です。
Javascript
1 2 |
let setParam = '?aaa=aaa'; history.pushState(null, null, setParam); |
解説
1 |
let setParam = '?aaa=aaa'; |
付けたいパラメータを宣言
1 |
history.pushState(null, null, setParam); |
setParamを履歴に追加する。
これは更新しないので、設定して更新したいなら、
上記の部分を下記にするといいです。
1 |
location.search = setParam; |
よろしければコメントをどうぞ