Will the colon ":" in urlencode/decode be escaped?

In

http://www.w3school.com.cn/ta.
, it is written in the url number that the : number is converted to % 3a , but:
1, enter www.baidu.com?x=a b in the browser, and it will be converted to https://www.baidu.com/?x=a%20b. However, entering wwww.baidu.com?x=a:b will not transcode.
2, decodeURL ("3a") will not convert
3, At the same time, I checked the information https://www.baidu.com/s?ie=ut., it is mentioned that : colons are legal characters.

how do you explain this contradiction? How do I convert 3a received by Node.js to : colon? (if replace () is not used)

Mar.03,2021

encodeURI the purpose of this method is to fully encode URI, so the following ASCII punctuation, encodeURI () functions with special meaning in URI are not escaped: /?: @ & = + $,-sharp
if the URI component contains delimiters, such as? And-sharp, should use the encodeURIComponent () method to encode each component separately.

encodeURIComponent('a:b')
decodeURIComponent('a%3Ab')
MySQL Query : SELECT * FROM `codeshelper`.`v9_news` WHERE status=99 AND catid='6' ORDER BY rand() LIMIT 5
MySQL Error : Disk full (/tmp/#sql-temptable-64f5-1e447dc-44ab4.MAI); waiting for someone to free some space... (errno: 28 "No space left on device")
MySQL Errno : 1021
Message : Disk full (/tmp/#sql-temptable-64f5-1e447dc-44ab4.MAI); waiting for someone to free some space... (errno: 28 "No space left on device")
Need Help?