Component vs full URL encoding
"Encode component" (encodeURIComponent) escapes every reserved character including / ? & = : — use it for individual query-string values. "Encode full URL" (encodeURI) leaves URL structure characters intact — use it to clean up a complete URL that contains spaces or non-ASCII characters without breaking its structure.
Why percent encoding exists
URLs can only safely contain a limited ASCII character set. Everything else — spaces, ampersands inside values, Unicode text — must be written as a percent sign followed by hex bytes (%20 for a space). Servers decode these automatically, so encoding is about transport safety, not secrecy.
Privacy
All encoding and decoding happens in your browser. Nothing is transmitted.