最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

淺談在js傳遞參數(shù)中含加號(hào)(+)的處理方式

 更新時(shí)間:2016年10月11日 12:47:21   投稿:jingxian  
下面小編就為大家?guī)硪黄獪\談在js傳遞參數(shù)中含加號(hào)(+)的處理方式。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

一般情況下,URL 中的參數(shù)應(yīng)使用 url 編碼規(guī)則,即把參數(shù)字符串中除了 -_. 之外的所有非字母數(shù)字字符都將被替換成百分號(hào)(%)后跟兩位十六進(jìn)制數(shù),空格則編碼為加號(hào)(+)。

但是對(duì)于帶有中文的參數(shù)來說,這種編碼會(huì)使編碼后的字符串變得很長(zhǎng)。

如果希望有短一點(diǎn)的方式對(duì)參數(shù)編碼,可以采用 base64 編碼方式對(duì)字符串進(jìn)行編碼,但是 base64 編碼方式不能處理 JavaScript 中的中文,因?yàn)?JavaScript 中的中文都是以 UTF-16 方式保存的。

而 base64 只能處理單字節(jié)字符,所以不能直接用 base64 對(duì)帶有中文的 JavaScript 字符串進(jìn)行編碼。

但是可以通過 utf.js 這個(gè)程序中提供的 utf16to8 來將 UTF-16 編碼的中文先轉(zhuǎn)化為 UTF-8 方式,然后再進(jìn)行 base64 編碼。

這樣編碼后的字符串,在傳遞到服務(wù)器端后可以直接通過 base64_decode 解碼成 UTF-8 的中文字符串。

但是還有個(gè)問題需要注意。

base64 編碼中使用了加號(hào)(+),而 + 在 URL 傳遞時(shí)會(huì)被當(dāng)成空格,因此必須要將 base64 編碼后的字符串中的加號(hào)替換成 %2B 才能當(dāng)作 URL 參數(shù)進(jìn)行傳遞。

否則在服務(wù)器端解碼后就會(huì)出錯(cuò)。

所以我們需要做的就是encodeURI(str).replace(/\+/g,'%2B')

以上就是小編為大家?guī)淼臏\談在js傳遞參數(shù)中含加號(hào)(+)的處理方式全部?jī)?nèi)容了,希望大家多多支持腳本之家~

相關(guān)文章

  • 基于jQuery的圖片不完全按比例自動(dòng)縮小

    基于jQuery的圖片不完全按比例自動(dòng)縮小

    有時(shí)我們會(huì)有這樣的需求:讓圖片顯示在固定大小的區(qū)域。如果不考慮 IE6 完全可以使用 css 的 max-width 限制寬度自動(dòng)按比例縮小顯示,但是這樣有個(gè)問題,就是如果按比例縮小后,圖片高度不夠,那么就很難看了
    2014-07-07
  • javascript 節(jié)點(diǎn)排序 2

    javascript 節(jié)點(diǎn)排序 2

    對(duì)支持sourceIndex的HTML文檔的節(jié)點(diǎn)重排,使用JK提供的思路,速度至少比單純使用nodes.sort(function(a,b){return a.sourceIndex - b.sourceIndex})這種方式快兩倍
    2011-01-01
  • 原生js實(shí)現(xiàn)文件上傳、下載、封裝等實(shí)例方法

    原生js實(shí)現(xiàn)文件上傳、下載、封裝等實(shí)例方法

    在本篇文章里小編給各位整理的是關(guān)于原生js實(shí)現(xiàn)文件上傳、下載、封裝等實(shí)例方法,需要的朋友們可以參考學(xué)習(xí)下。
    2020-01-01
  • JS數(shù)組在內(nèi)存中的效率問題淺析

    JS數(shù)組在內(nèi)存中的效率問題淺析

    用js有很久了,但都沒有深究過js的數(shù)組形式,下面這篇文章主要給大家介紹了關(guān)于JS數(shù)組在內(nèi)存中的效率問題,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-02-02
  • 微信小程序支付前端源碼

    微信小程序支付前端源碼

    這篇文章主要為大家詳細(xì)介紹了微信小程序支付前端源碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-08-08
  • 封裝好的js判斷操作系統(tǒng)與瀏覽器代碼分享

    封裝好的js判斷操作系統(tǒng)與瀏覽器代碼分享

    這篇文章主要介紹了封裝好的js判斷操作系統(tǒng)與瀏覽器代碼分享,對(duì)于我們做系統(tǒng)、瀏覽器兼容非常有幫助,需要的朋友可以參考下
    2015-01-01
  • javascript 極速 隱藏/顯示萬行表格列只需 60毫秒

    javascript 極速 隱藏/顯示萬行表格列只需 60毫秒

    隱藏表格列 這種方式的效率極低。例如,隱藏一個(gè)千行表格的某列,在我的筆記本(P4 M 1.4G,768M內(nèi)存)上執(zhí)行需要約 4000毫秒的時(shí)間,令人無法忍受。
    2009-03-03
  • 用js獲取元素屬性的代碼

    用js獲取元素屬性的代碼

    js小技巧之訪問元素屬性
    2009-05-05
  • JavaScript的數(shù)據(jù)類型轉(zhuǎn)換原則(干貨)

    JavaScript的數(shù)據(jù)類型轉(zhuǎn)換原則(干貨)

    JavaScript是一門弱類型(或稱動(dòng)態(tài)類型)的語言,即變量的類型是不確定的。下面通過本文給大家分享javascript數(shù)據(jù)類型轉(zhuǎn)換小結(jié),包括顯示轉(zhuǎn)換的數(shù)據(jù)類型和隱式的數(shù)據(jù)類型轉(zhuǎn)換,感興趣的朋友跟隨腳本一起看看吧
    2018-03-03
  • 深入JS函數(shù)中默認(rèn)參數(shù)的使用詳解

    深入JS函數(shù)中默認(rèn)參數(shù)的使用詳解

    本文主要介紹了深入JS函數(shù)中默認(rèn)參數(shù)的使用詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07

最新評(píng)論

淳安县| 闸北区| 安徽省| 麻江县| 宁武县| 班戈县| 瓦房店市| 东乌珠穆沁旗| 上思县| 仁怀市| 曲麻莱县| 靖江市| 灵宝市| 浪卡子县| 陕西省| 邛崃市| 田林县| 汨罗市| 台前县| 醴陵市| 镇赉县| 肥城市| 长治市| 尼勒克县| 施甸县| 镇平县| 苏尼特右旗| 祁门县| 六安市| 化隆| 新平| 象州县| 中阳县| 田阳县| 阿鲁科尔沁旗| 呼伦贝尔市| 玛纳斯县| 松滋市| 陕西省| 汪清县| 济源市|