BlogJava 聯(lián)系 聚合 管理  

          Blog Stats

          文章分類

          收藏夾

          隨筆檔案

          文章檔案

          Java相關(guān)技術(shù)


          kait

          javasript的三種編碼方法

          escape() 方法:
          採用ISO Latin字符集對指定的字符串進行編碼。所有的空格符、標(biāo)點符號、特殊字符以及其他非ASCII字符都將被轉(zhuǎn)化成%xx格式的字符編碼(xx等於該字符 在字符集表裡面的編碼的16進制數(shù)字)。比如,空格符對應(yīng)的編碼是% 20。不會被此方法編碼的字符: @ * / +

          encodeURI() 方法:
          把URI字符串採用UTF-8編碼格式轉(zhuǎn)化成escape格式的字符串。不會被此方法編碼的字符:! @ # $& * ( ) = : / ; ? + '

          encodeURIComponent() 方法:

          把URI 字符串採用UTF-8編碼格式轉(zhuǎn)化成escape格式的字符串。與encodeURI()相比,這個方法將對更多的字符進行編碼,比如 / 等字符。所以如果字符串裡面包含了URI的幾個部分的話,不能用這個方法來進行編碼,否則 / 字符被編碼之後URL將顯示錯誤。不會被此方法編碼的字符:! *  ( ) '

          因此,對於中文字符串來說,如果不希望把字符串編碼格式轉(zhuǎn)化成UTF-8格式的(比如原頁面和目標(biāo)頁面的charset是一致的時候),只需要使用 escape。如果你的頁面是GB2312或者其他的編碼,而接受參數(shù)的頁面是UTF-8編碼的,就要採用encodeURI或者 encodeURIComponent。

          另外,encodeURI/encodeURIComponent是在javascript1.5之後引進的,escape則在javascript1.0版本就有。
          posted on 2008-01-14 15:33 小天 閱讀(2444) 評論(1)  編輯  收藏

          評論

          # re: JavaScript的三種編碼方法 2008-01-16 10:02 jeasonzhao
          補充一點
          如果您的服務(wù)器使用JSP Container,encode的方法編碼的東東將不會被JSP識別
          例如
          <script>
          window.loaction='a.jsp?AParam='+encode('AAAA');
          </script>
          服務(wù)端使用
          request.getParameter("AParam")返回為NULL  回復(fù)  更多評論
            


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 新泰市| 绍兴县| 千阳县| 都匀市| 彭泽县| 西丰县| 安龙县| 伊宁市| 万安县| 延寿县| 岱山县| 禹城市| 祁东县| 江陵县| 夏津县| 石城县| 石家庄市| 抚顺县| 双牌县| 运城市| 东城区| 海南省| 台北县| 丹巴县| 哈尔滨市| 高尔夫| 梅州市| 大连市| 栾川县| 耿马| 福清市| 务川| 静安区| 临澧县| 常德市| 茂名市| 施秉县| 广宁县| 崇左市| 巩义市| 常宁市|