js解碼編碼decodeURI與decodeURIComponent區別
這是一個系列,記錄我前端開發常用的程式碼,小常識,有些是參考網上程式碼,(講的可能有點爛,求不要打臉,嚶嚶嚶~~)送給那些需要的人。可以相互交流,喜歡的加我吧。
Wx: Lxp911221
decodeURI與decodeURIComponent區別
encodeURI()不會對本身屬於URI的特殊字元進行編碼,例如冒號、正斜槓、問號和井字號;
而encodeURIComponent()則會對它發現的任何非標準字元進行編碼。
來看下面的例子:
var uri="http://www.jxbh.cn/illegal value.htm#start";
//”http://www .jxbh.cn/illegal%20value.htm#start”
alert(encodeURI (uri)):
//”http%3A%2F%2Fwww.jxbh.cn%2Fillegal%20value.htm%23start”
alert( encodaURIComponent (uri));
使用encodeURI()編碼後的結果是除了空格之外的其他字元都原封不動,只有空格被替換成了%20。
而encodeURIComponent()方法則會使用對應的編碼替換所有非字母數字字元。
這也正是可以對整個URI使用encodeURI(),而只能對附加在現有URI後面的字串使用encodeURIComponent()的原因所在。
一般來說,我們使用encodeURIComponent()方法的時候要比使用encodeURI()更多,因為在實踐中更常見的是對查詢字串引數而不是對基礎URL進行編碼.
很多網站的cookie在進行編碼的時候,是encodeURIComponent格式的,所以應該使用decodeURIComponent()進行解碼
相關推薦
js解碼編碼decodeURI與decodeURIComponent區別
這是一個系列,記錄我前端開發常用的程式碼,小常識,有些是參考網上程式碼,(講的可能有點爛,求不要打臉,嚶嚶嚶~~)送給那些需要的人。可以相互交流,喜歡的加我吧。 Wx: Lxp911221
JavaScript decodeURI()與decodeURIComponent()區別
decodeURI()定義和用法:decodeURI()函式可對encodeURI()函式編碼過的URI進行解碼. 語法:decodeURI(URIstring) 引數描述:URIstring必需,一個字串,含有要解碼的URI組或其他要解碼的文字. 返回值:URIstrin
javascript中的decodeURI()與decodeURIComponent()
特殊 ava 也不會 body lencod 編碼 解決 script school 最近做了一個上傳進度條模塊,需要取得返回的url,但是無奈,取得的是亂碼,於是在服務器端把返回的url進行encode編碼,然後在js中進行解碼,一開始采用的是decodeURI(),如下
JS中encodeURIComponent(URL)編碼與decodeURIComponent(URL)解碼詳解
(1) encodeURIComponent(url) 函式 定義和用法 encodeURIComponent() 函式可把字串作為 URI 元件進行編碼。 語法
js中decodeURI()和encodeURI()區別,decodeURIComponent和encodeURIComponent區別
nbsp sch www 問題 encode 替換 副本 字符替換 序列 decodeURI()定義和用法:decodeURI()函數可對encodeURI()函數編碼過的URI進行解碼.語法:decodeURI(URIstring)參數描述:URIstring必需,一個字
詳談js對url進行編碼和解碼(三種方式的區別)
今天在專案中發現一個bug,原作者本意是提取url中的某段資訊與一已知資訊進行比較,如果成立則執行相應程式碼。找來找去發現邏輯並沒有問題,但是前段樣式並沒有改變,通過控制檯列印提取出來的結果,發現是一段UTF8加密的文字,最後進行相應的解碼程式碼才生效。 J
js對url進行編碼和解碼(三種方式區別)
*** 只有 0-9[a-Z] $ - _ . + ! * ' ( ) , 以及某些保留字,才能不經過編碼直接用於 URL。 ***例如:搜尋的中文關鍵字,複製網址之後再貼上就會發現該URL已經被轉碼。 1、escape 和 unescape 原理:對除ASCII字母、數字、標點符號 @ * _ +
js字符串與Unicode編碼互相轉換
char 字符串 name targe ron strong target nbsp log ‘好‘.charCodeAt(0).toString(16) "597d" 這段代碼的意思是,把字符‘好‘轉化成Unicode編碼, 看看charCodeAt()是怎麽個意思
js == 與 === 的區別[轉]
tro ber key 進行 nbsp 如果 不同 num false we文章轉自http://blog.sina.com.cn/s/blog_4b32835b01014iv9.html 1、對於string,number等基礎類型,==和===是有區別的 1)不同類型間
PHP編碼gzdeflate與Golang解碼DEFLATE
gzdeflate golang deflate 解碼 編碼[email protected]/* */:“數據存到redis是gzdeflate壓縮過的數據,golang從redis取出來,解壓縮失敗”。很多從PHP轉Golang的業務經常會遇到,所以寫下這篇博文,希望可以幫助更多人。想要使用g
小tips:JS == 與 === 的區別
arr ron tip 基礎類型 code down ray 如果 進行 1、對於string,number等基礎類型,==和===是有區別的1)不同類型間比較,==之比較“轉化成同一類型後的值”看“值”是否相等,===如
js 中使用var與省略var 定義變量的區別
不必要 pos pan 定義 就是 body 對象 gpo ole 在js中定義變量的時候,我們習慣了用var,其實省略var也可以用的。 今天總結一下,使用var或省略var 定義變量的區別 1、var 私有變量,只能在當前js使用,或者在當前作用域使用,定義私有變量,
js onclick與addEventListener 區別及用法
nbsp scala 一段 onclick 元素 user 不同的 公司 utf-8 addEventListener(建議使用)好比一個監聽容器,這個容器裏面可以裝很多個監聽事件,而且每一個事件都會執行。 onclick 在今天之前我使用這個(onclick)比較多(單純
js與jq 區別地方
1、載入DOM區別 JavaScript: window.onload function first(){ alert(‘first’); } function second(){ alert(‘second’); } window.onload = first; window.on
【JS】深拷貝與淺拷貝的區別,實現深拷貝的幾種方法
如何區分深拷貝與淺拷貝,簡單點來說,就是假設B複製了A,當修改A時,看B是否會發生變化,如果B也跟著變了,說明這是淺拷貝,拿人手短,如果B沒變,那就是深拷貝,自食其力。 此篇文章中也會簡單闡述到棧堆,基本資料型別與引用資料型別,因為這些概念能更好的讓你理解深拷貝與淺拷貝。 我們來舉個淺拷貝例
c# UTF-8解碼編碼及陣列與List<string>之間轉換等基本知識點總結
Encoding utf8 = Encoding.UTF8; //首先用utf-8進行解碼 &
看懂encodeURI、encodeURIComponent、decodeURI、decodeURIComponent的區別
一、這四個方法的用處 1、用來編碼和解碼URI的 統一資源識別符號,或叫做 URI,是用來標識網際網路上的資源(例如,網頁或檔案)和怎樣訪問這些資源的傳輸協議(例如,HTTP 或 FTP)的字串。除了encodeURI、encodeURIComponent、decodeURI、decodeURICompo
seq2seq編碼器與解碼器 --學習筆記
0、網路圖結構 從上圖可以看出,編碼是一個RNN網路,當然可以是一個單向RNN也可以是一個雙向RNN,C是一個context為背景變數,將輸入資訊進行編碼彙總得到一個資訊。接著由這個背景變數作為解碼的輸入,加上隱藏變數和輸出變數,得到結果在進行對映,依次得到序列的每個預測結果。
js apply的用法與call的區別
https://blog.csdn.net/qq_35893120/article/details/78890357 ←原文 1.apply方法能劫持另外一個物件的方法,繼承另外一個物件的屬性。 Function.apply(obj,args)方法能接收兩個引數 obj:這個物件將代替Fun
【js】 ajax 與 axios 區別 ajax 與 axios區別
ajax 與 axios區別 Ajax: Ajax 即“Asynchronous Javascript And XML”(非同步 JavaScript 和 XML),是指一種建立互動式網頁應用的網頁開發技術。 Ajax = 非同步 JavaScript 和