URL Encoder & Decoder
Encode strings for use in URLs (percent encoding) or decode percent-encoded URLs back to readable form.
Component vs Full URL
encodeURIComponent encodes everything that isn't a literal letter/digit/-_.~. Use it on a query parameter value (anything between ?key= and &).
encodeURI encodes only characters that aren't allowed in URLs at all — leaves :, /, ?, #, & intact. Use it on a full URL string.