const url = new URL("https://example.com/path/to/page?key=value&page=1#main");
console.log(url);
/* URL {
href: "[https](https://example.com/path/to/page?key=value&page=1#main"
origin: "https://example.com",
protocol: "https",
username: "",
password: "",
host: "example.com",
hostname: "example.com",
port: "",
pathname: "/path/to/page",
search: "?key=value&page=1",
hash: "#main",
searchParams: URLSearchParams { key: value, page: 1}
} */
const base = "https://example.com/";
const name = "<user input>"; // <: %3C, 空白: %20, >: %3E
const result = new URL(`/user/${encodeURIComponent(name)}`, base);
console.log(result.toString()); // "https://example.com/user%3Cuser$20input%3E"