encodeURIComponenthe 和 application/x-www-form-urlencoded 的区别

JS 里的 encodeURIComponent 和表单提交用的 application/x-www-form-urlencoded 编码都是用的百分号编码的形式,那么两者有什么区别?一个是前者只支持 UTF8,而后者支持任意编码(当前页面编码),假设前提是当前页面就是 UTF8 编码的,那两者还有区别吗?我测了一下,在测试之前我只想到了"空格"