encodeURIComponent(" ") // => '%20' encodeURIComponent("+") // => '%2B' encodeURIComponent("/") // => '%2F' encodeURIComponent("*") // => '*' encodeURIComponent("https://httpbin.org/get?x=#") // => 'https%3A%2F%2Fhttpbin.org%2Fget%3Fx%3D%23' 値に対して行う URLを構成する文字もエンコードする RFC3986 に近いが守っていない !'()* をエンコードしていない つまり RFC2396 らしい Component が何を指しているのかわかりづらい こんなものをグローバルに定義するとか設計がどうかしている(小声) decodeURIComponent