こんにちは、さるまりんです。
今回はJavaScriptでクエリー文字列を作成する方法です。
item_type=books&price_from=500&price_to=1000
のような文字列を作成してクエリー付きのURLを作成したい時は
URLSearchParams
を使います
こんな感じです。
const params = {
item_type: "books",
price_from: 500,
price_to: 1000
};
const queryString = new URLSearchParams(params).toString();
window.location.href = "/search?" + queryString;
このコードでは以下のことをしています。
1. params
にクエリに使われるキーと値をもつ
2. params
を使ってURLSearchParams
を作る
3. できたURLSearchParams
をtoString
で文字列にする
4. /search?item_type=books&price_from=500&price_to=1000
にリダイレクトする
簡単ですね。
URLSearchParams
のコンストラクタには文字列でitem_type=books&price_from=500&price_to=1000
をそのまま渡すことも、上の例のようにオブジェクトを渡すことも、こんな
const params = [
["item_price", "books"],
["price_from", 500],
["price_to", 1000]
];
のように、キーと値のペアを配列で渡すこともできます。
例のように画面上の選択肢の状態でクエリを作って検索するケースなどで使えますね。
JavaScriptもいろんなことができるので勉強したいと思います。
サーバーサイドもフロントもどちらも大切ですね。
読んでくださってありがとうございました。
それではまた!