js中有三個函數(shù)是用于編碼的,他們是 escape(),encodeURI(),encodeURIComponent()函數(shù)。
在營口等地區(qū),都構建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務理念,為客戶提供做網(wǎng)站、網(wǎng)站制作 網(wǎng)站設計制作定制設計,公司網(wǎng)站建設,企業(yè)網(wǎng)站建設,品牌網(wǎng)站制作,營銷型網(wǎng)站建設,外貿(mào)營銷網(wǎng)站建設,營口網(wǎng)站建設費用合理。
而相對應的解碼函數(shù)式:unescape,decodeURI,decodeURIComponent 。
對 String 對象編碼以便它們能在所有計算機上可讀。
escape 方法返回一個包含了 charstring 內容的字符串值( Unicode 格式)。所有空格、標點、重音符號以及其他非 ASCII 字符都用 %xx 編碼代替,其中 xx 等于表示該字符的十六進制數(shù)。例如,空格返回的是 "%20" 。
字符值大于 255 的以 %uxxxx 格式存儲。
**注意 escape 方法不能夠用來對統(tǒng)一資源標示碼 (URI) 進行編碼。對其編碼應使用 encodeURI 和encodeURIComponent 方法。
(轉)該方法不會對 ASCII 字母和數(shù)字進行編碼,也不會對下面這些 ASCII 標點符號進行編碼: - _ . ! ~ * ' ( ) 。其他所有的字符都會被轉義序列替換。
但是會編碼(;/?:@=+$,#)這些在地址欄中經(jīng)常用到的特殊字符
**
將文本字符串編碼為一個有效的統(tǒng)一資源標識符 (URI)。
說明:
encodeURI 方法返回一個編碼的 URI。如果您將編碼結果傳遞給 decodeURI,那么將返回初始的字符串。encodeURI 方法不會對下列字符進行編碼:":"、"/"、";" 和 "?"。請使用 encodeURIComponent 方法對這些字符進行編碼。
此方法是不會將(;/?:@=+$,#)這些字符編碼的
說明:URIComponent 是一個完整的 URI 的一部分。
如果 encodedURIString 無效,將產(chǎn)生一個 URIError。
該方法不會對 ASCII 字母和數(shù)字進行編碼,也不會對這些 ASCII 標點符號進行編碼: - _ . ! ~ * ' ( ) 。
但是會編碼(;/?:@=+$,#)這些在地址欄中經(jīng)常用到的特殊字符
大家在使用JS提交數(shù)據(jù)時,尤其是中文的時候,經(jīng)常會需要將要提交的字符串進行URL編碼。在JS中對字符串進行URL編碼有好幾種方
法,encodeURI,encodeURIComponent,還有escape。在我看到的很多代碼中escape這個函數(shù)用的最多,不過這個函數(shù)卻
是不推薦使用的。下面我們來分別看看這幾個函數(shù):
encodeURI:對指定的字符串進行URL編碼,不包括 : # / \ = 這些URL中的關鍵字符。
encodeURIComponent:對字符串中的字符進行編碼,包括URL中的特殊字符。
escape:這個是JS比較早期版本的函數(shù),這個函數(shù)中處理unicode字符的時候會有些問題。
代碼如下:
復制代碼 代碼如下:
var url = "; amp;b=呵呵";
var encodedUrl = encodeURI(url);
alert(encodedUrl); //輸出:;b=%E5%91%B5%E5%91%B5
encodedUrl = encodeURIComponent(url);
alert(encodedUrl); //輸出:http%3A%2F %2F
alert(escape(url)); //輸出:http%3A//
如上所示,escape函數(shù)中處理中文字符的時候,都會轉換成%uxxxx這種形式,顯然這個和URL編碼的格式不一樣,而
encodeURIComponent函數(shù)編碼是最徹底的,如果沒有特殊需要的話,encodeURIComponent這個函數(shù)是比較常用的,當然,也
許我們使用escape也不會有什么問題,也許你的服務端語言也能夠正常的解析出來,不過這個函數(shù)在處理unicode字符的時候還不是很標準,所以這里
建議大家使用encodeURIComponent和decodeURIComponent這對函數(shù)來對字符串進行URL編碼和解碼。
可以在使用script標簽時指定charset 屬性,規(guī)定在外部腳本文件中使用的字符編碼。
如果外部文件中的字符編碼與主文件中的編碼方式不同,就要用到 charset 屬性。
默認的字符編碼是 ISO-8859-1。
如: script type="text/javascript" src="myscripts.js" charset="UTF-8"/script
注意:只有在使用引入外部js文件時,可以聲明編碼格式,對行內腳本無效;
現(xiàn)在編碼方式主要有兩種,一個是utf-8,一個GB2312,如果編碼方式不同,會導致頁面出現(xiàn)亂碼。想修改編碼方式一般可以用charset指定,也可以再工具中設置: 1.可以在使用script標簽時指定。
網(wǎng)站欄目:編碼javascript,編碼鏈
當前地址:http://vcdvsql.cn/article2/dsdgeoc.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供App開發(fā)、企業(yè)網(wǎng)站制作、網(wǎng)站維護、域名注冊、網(wǎng)站設計、自適應網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)