Thursday, October 16, 2025
HomeLanguagesJavascriptDifference between decodeURIComponent() and decodeURI() functions in JavaScript

Difference between decodeURIComponent() and decodeURI() functions in JavaScript

Both decodeURI() and decodeURIComponent() are Javascript global functions that are used for decoding encoded URI (Uniform Resource Identifier). 

JavaScript decodeURI() function: It decodes a string previously encoded by the encodeURI() function. It returns a decoded URI by replacing each UTF-8 escape sequence with the characters it represents.

Syntax: 

decodeURI(encodeURI(x));

Parameters: It contains a single parameter that includes a string previously encoded by the encodeURI() function and hence result will be x again.

Example: This example uses decodeURI() function. 

HTML




<script type="text/javascript">
    var decodeText1 = decodeURI('http://www.testing.com/');
    console.log(decodeText1);
    var decodeText2 = decodeURI('http%3A%2F%2Fwww.testing.com%2F');
    console.log(decodeText2);
</script>


Output: 

http://www.testing.com/
http%3A%2F%2Fwww.testing.com%2F

JavaScript decodeURIComponent() function: It decodes a string previously encoded by the encodeURIComponent() function. It returns a decoded URI Component by replacing each UTF-8 escape sequence with the characters it represents. It can decode any value between %00 and %7F. 

Syntax: 

decodeURIComponent(encodeURIComponent(x));

Parameters: Single parameter that includes a string previously encoded by encodeURIComponent() and hence result will be x again.

Example: This example is on decodeURIComponent() 

HTML




<script type="text/javascript">
    var decodeText1 = decodeURIComponent(
                    'http://www.testing.com/');
    console.log(decodeText1);
      
    var decodeText2 = decodeURIComponent(
            'http%3A%2F%2Fwww.testing.com%2F');
    console.log(decodeText2);
</script>


Output: 

http://www.testing.com/
http://www.testing.com/

Note:Both functions throw URIError indicating that one or more of the escape sequences in string is malformed and cannot be correctly decoded.
Difference between decodeURIComponent() and decodeURI() Function: 

  • decodeURI(): It takes encodeURI(url) string so it cannot decoded characters (, / ? : @ & = + $ #)
  • decodeURIComponent(): It takes encodeURIComponent(url) string so it can decode these characters.
     
  • decodeURI(): It takes encodeURI(url) string as parameter and returns the decoded string.
  • decodeURIComponent(): It takes encodeURIComponent(url) string as parameter and returns the decoded string.
  • decodeURI(“%41”): It returns “A”
  • decodeURIComponent(“%41”) It returns “A”
  • decodeURI(“%26”): It returns “%26”
  • decodeURIComponent(“%26”): It returns “&”
RELATED ARTICLES

Most Popular

Dominic
32361 POSTS0 COMMENTS
Milvus
88 POSTS0 COMMENTS
Nango Kala
6728 POSTS0 COMMENTS
Nicole Veronica
11892 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11954 POSTS0 COMMENTS
Shaida Kate Naidoo
6852 POSTS0 COMMENTS
Ted Musemwa
7113 POSTS0 COMMENTS
Thapelo Manthata
6805 POSTS0 COMMENTS
Umr Jansen
6801 POSTS0 COMMENTS