Javascript 的 encodeURI()、decodeURI() 及其元件函式


encodeURI() 函式對整個 URI 進行編碼,包括特殊字元,但不包括 (, / ? : @ & 等字元。

encodeURIComponent() 函式對 URI 的某些部分進行編碼,主要透過對特殊字元進行編碼。它還對以下字元進行編碼:(, / ? : @ & 等。

decodeURI() 函式對 encodeURI() 函式生成的 URI 進行解碼。

decodeURIComponent() 函式用於對 encodeURIComponent() 生成的 URI 的某些部分進行解碼。

以下是 encodeURI()、decodeURI() 及其元件函式的程式碼:-

示例

 即時演示

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
<style>
   body {
      font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
   }
   .encode,
   .decode {
      font-size: 18px;
      font-weight: 500;
   }
</style>
</head>
<body>
<h1>encodeURI(), decodeURI() and its components functions</h1>
<button class="encodeUri">ENCODE URI</button>
<button class="decodeUri">DECODE URI</button>
<button class="encodeUriComponent">ENCODE URI COMPONENT</button>
<button class="decodeUriComponent">DECODE URI COMPONENT</button>
<div class="encode"></div>
<div class="decode"></div>
<h3>
Click on the above buttons to encode or decode URI component
</h3>
<script>
   let fillEle = document.querySelector(".sample");
   let decodeEle = document.querySelector(".decode");
   let encodeEle = document.querySelector(".encode");
   let url = "https://www.google.com/sample%20link/?img=91gf.jpg&size=451px";
   let encodeUrl;
   document.querySelector(".encodeUri").addEventListener("click", () => {
      encodeUrl = encodeURI(url);
      encodeEle.innerHTML = "Encoded url = " + encodeUrl;
   });
   document.querySelector(".decodeUri").addEventListener("click", () => {
      decodeEle.innerHTML = "Decoded url = " + decodeURI(encodeUrl);
   });
   let encodeComponent;
   document
   .querySelector(".encodeUriComponent")
   .addEventListener("click", () => {
      encodeComponent = encodeURIComponent(url);
      encodeEle.innerHTML = "Encoded url = " + encodeComponent;
   });
   document
   .querySelector(".decodeUriComponent")
   .addEventListener("click", () => {
      decodeEle.innerHTML =
      "Decoded url = " + decodeURIComponent(encodeComponent);
   });
</script>
</body>
</html>

輸出

單擊“ENCODE URI”然後再單擊“DECODE URI”按鈕之後:-

更新於: 2020 年 5 月 7 日

223 次瀏覽

開啟你的 職業生涯

透過完成課程獲取認證

開始
廣告
© . All rights reserved.