J2EE社區(qū)

          茍有恒,何必三更起五更眠;
          最無益,只怕一日曝十日寒.
          posts - 241, comments - 318, trackbacks - 0, articles - 16
           1.js對文字進(jìn)行編碼涉及3個函數(shù):escape,encodeURI,encodeURIComponent

               相應(yīng)3個解碼函數(shù):unescape,decodeURI,decodeURIComponent
          2.  js對文字進(jìn)行編碼涉及3個函數(shù)的區(qū)別:

               
               escape()方法采用ISO Latin字符集對指定的字符串進(jìn)行編碼。所有的空格符、標(biāo)點符號、特殊字符以及其他非ASCII字符都將被轉(zhuǎn)化成%xx格式的字符編碼(xx等于該字符在字符集表里面的編碼的16進(jìn)制數(shù)字)。比如,空格符對應(yīng)的編碼是%20unescape方法與此相反。不會被此方法編碼的字符: @ * / +.總體上來說escape不編碼字符有69個:*+-./@_0-9a-zA-Z

                  encodeURI() 方法:把URI字符串采用UTF-8編碼格式轉(zhuǎn)化成escape格式的字符串。encodeURI不編碼字符有82個:!#$&'()*+,-./:;=?@_~0-9a-zA-Z

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

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

           


          名稱: ?4C.ESL | .↗Evon
          口號: 遇到新問題?先要尋找一個方案乄而不是創(chuàng)造一個方案こ
          mail: 聯(lián)系我


          Feedback

          # re: js對文字進(jìn)行編碼涉及3個函數(shù):escape,encodeURI,encodeURIComponent的區(qū)別  回復(fù)  更多評論   

          2009-10-30 08:57 by HiMagic!
          charset的考慮應(yīng)該是第二位的,第一位要考慮的是將被編碼的內(nèi)容是一整串url還是url中的一個參數(shù)值

          # re: js對文字進(jìn)行編碼涉及3個函數(shù):escape,encodeURI,encodeURIComponent的區(qū)別  回復(fù)  更多評論   

          2009-10-30 13:29 by 凡客誠品網(wǎng)
          師德師風(fēng)金蛇劍法

          # re: js對文字進(jìn)行編碼涉及3個函數(shù):escape,encodeURI,encodeURIComponent的區(qū)別  回復(fù)  更多評論   

          2009-10-30 22:06 by xcp
          @HiMagic!
          是的,肯定要先考慮將被編碼的內(nèi)容是一整串url還是url中的一個參數(shù)值,如果是url就要用 encodeURI()方法
          主站蜘蛛池模板: 抚远县| 焉耆| 彰武县| 仁化县| 平果县| 汉源县| 屏东市| 汕尾市| 临夏县| 姜堰市| 白玉县| 开远市| 隆德县| 永善县| 阳朔县| 乐业县| 新郑市| 喀喇沁旗| 卢湾区| 大城县| 桦甸市| 科技| 高雄市| 南华县| 临海市| 久治县| 华安县| 富蕴县| 遂平县| 民丰县| 临江市| 喜德县| 阜平县| 郓城县| 图木舒克市| 长垣县| 英德市| 常宁市| 江孜县| 山阳县| 尼玛县|