Javascript URLSearchParamsでネストパラメータ生成

2021年5月4日火曜日

javascript

t f B! P L

概要

クエリパラメータを作るJavascriptのURLSearchParamsでネストしたパラメータを作りたい

{a: {b: 1}}

みたいなやつをパラメータにしたい。
そのまま渡しても使えない。object+Objectになっちゃう

new URLSearchParams({
  a: {b: 1}
}).toString();
"a=%5Bobject+Object%5D"

作成方法

JSON.stringifyでネストしたオブジェクトを文字列にする。

new URLSearchParams({
  a: JSON.stringify({b: 1})
}).toString();
"a=%7B%22b%22%3A1%7D"

サーバサイドには文字列化したオブジェクトが渡ってくるので文字列をパースする。Rubyだと以下

JSON.parse(渡ってきた文字列)

本当はパースしないでそのまま使いたいけど、他に良いやり方がわからない・・・

自己紹介

Webエンジニアをやっています。日々思ったことや、読書レビュー、IT系の記事などを書き連ねています

広告

Ruby mapでnilが入ってしまう件

  概要 ブロック内の結果を配列にして返すrubyのmap。 便利だが以下のように特定の値の時にスキップしたいケースでは、nilが入ってしまう ( 1 .. 5 ). map do | v | next if v == 3 v end => [ 1 , 2...

QooQ