Прошу прощения, че то я запутался в 2 соснах:). Правильно ли я понимаю, что ф-ции decodeURI, decodeURIComponent и unescape не меняют плюс на пробел? Если так, то почему?
Конечно не трудно это сделать вручную, но кто знает, что она там еще не меняет и почему? Какая логика при декодировании?
UPD
По поводу решения мне подсказали https://nodejs.org/api/querystring.html
Но, все таки интересно, почему нативный JS так кодирует? Это баг или фича? Поэтому тему пока не закрываю:)