const set1 = ";,/?:@&=+$"; // 予約された文字(Reserved Characters)
const set2 = "-_.!~*'()"; // 予約されていない文字(Unescaped Characters)
const set3 = "#"; // Number Sign
const set4 = "ABC abc 123"; // アルファベットと数字 + 空白

console.log(encodeURI(set1)); // ;,/?:@&=+$
console.log(encodeURI(set2)); // -_.!~*'()
console.log(encodeURI(set3)); // #
console.log(encodeURI(set4)); // ABC%20abc%20123(空白が%20にエンコードされる)

console.log(encodeURIComponent(set1)); // %3B%2C%2F%3F%3A%40%26%3D%2B%24
console.log(encodeURIComponent(set2)); // -_.!~*'()
console.log(encodeURIComponent(set3)); // %23
console.log(encodeURIComponent(set4)); // ABC%20abc%20123(空白が%20にエンコードされる)