encodeURIComponent関数

(標準組み込みオブジェクト)
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/encodeURIComponent

encodeURIComponent関数は、URI において特別な意味を持つ予約文字「/」「:」「&」「+」「=」などもエンコードする。

var uri = "https://www.sejuku.net/あ";
var res1 = encodeURIComponent(uri);
console.log(res1)
>> https%3A%2F%2Fwww.sejuku.net%2F%E3%81%82

「あ」文字の変換のみではなく、httpsの後のコロン記号やスラッシュなども変換された。
encodeURIComponentは、URI全体ではなくURIを構成する部分パーツのエンコーディングに最適な関数である。

var locationsearch = '?id=12345&category=script&isname=true';
var result = {};
locationsearch.substring(1).split("&").forEach(function(ele, i){
  var key = ele.split("=");
  result[key[0]] = decodeURIComponent(key[1]);
})
>> {id: "12345", category: "script", isname: "true"}
inserted by FC2 system