JavascriptでURLパラメータを取得して連想配列を作成
URLのパラメータから特定の値をCookieに保存して…のような形で使いそうだったので久々にJavascriptを書いてみた。
- location.search
- URLの?以降のパラメータを取得する
- replace()
- 文字列を置き換える
- split()
- 指定した文字列で分割する
- forEach()
- 配列の値を取得し、コールバック関数を実行する
順序としてはURLのパラメータ部分を取得し、?を削除、&で分割してまずは変数に格納。=の前の部分をキーに、後ろの部分を値にし、連想配列にすると行ったもの。
const search = location.search.replace('?', '').split('&')
const param = new Object()
search.forEach( item => {
const divisionItem = item.split('=')
param[divisionItem[0]] = divisionItem[1]
})
console.log(param)
連想配列の場合、new Array()ではダメで、new Object()なんですね。なんで配列に値が入らないのかなと思ったらここでした。知識不足…