老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)

JSBase64編碼解碼的示例分析

這篇文章主要介紹JS Base64編碼解碼的示例分析,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!

成都創(chuàng)新互聯(lián)公司是專業(yè)的湘橋網(wǎng)站建設(shè)公司,湘橋接單;提供成都網(wǎng)站建設(shè)、成都網(wǎng)站制作,網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行湘橋網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!

1. 基礎(chǔ)不牢,選型糟糕

糟糕的技術(shù)選型往往源自自身技術(shù)廣度不足。就在數(shù)月前,一個前端HTML字符信息轉(zhuǎn)Base64的需求,我是毫不猶豫去找了個開源的base64.js。使用很簡單,瀏覽器引入該JS文件,然后Base64編碼這樣:

JS Base64編碼解碼的示例分析

解碼就調(diào)用decode方法,如下:

JS Base64編碼解碼的示例分析

數(shù)據(jù)準(zhǔn)確,功能良好。當(dāng)時弄完還洋洋得意,以為是個完美的解決。結(jié)果,今天發(fā)現(xiàn),尼瑪原來瀏覽器很早就支持了JS Base64加密解密,而上面這種洋洋得意的做法完全就是瞎子點燈——白費蠟!根本就不是一個好的技術(shù)選型。

由于技術(shù)廣度掌握不足,或者說JS基礎(chǔ)掌握不牢,導(dǎo)致浪費了大把時間去找Base64的JS語言庫,學(xué)習(xí)其API用法,換來一個冗余完全不需要加載的JS,現(xiàn)在來看,真是個糟糕的技術(shù)選型。

2. 原生atob和btoa方法

實際上,從IE10+瀏覽器開始,所有瀏覽器就原生提供了Base64編碼解碼方法,不僅可以用于瀏覽器環(huán)境,Service Worker環(huán)境也可以使用。

方法名就是atob和btoa,具體語法如下:

1)Base64解碼

語法為(瀏覽器中):

var decodedData = window.atob(encodedData);

或者(瀏覽器或js Worker線程中):

var decodedData = self.atob(encodedData);

例如:

window.atob('emhhbmd4aW54dQ==');

// 返回:'zhangxinxu'

atob這個方法名稱乍一看,很奇怪,不知道這個單詞什么意思。我們可以理解為 A to B,也就是從A到B。這里的B指的就是Base64嗎?哈哈哈,恭喜你!猜錯了!A指的才是Base64,反的,B才是普通字符,普通意思就是low,俗稱low B。所以我們這么記憶,Low B,Low B,B表示很Low的普通字符,A才是Base64,和首字母對應(yīng)關(guān)系是反的。

因此,atob表示Base64字符to普通字符,也就是Base64解碼。

2)Base64編碼

語法為(瀏覽器中):

var encodedData = window.btoa(stringToEncode);

或者(瀏覽器或js Worker線程中):

var encodedData = self.btoa(stringToEncode);

例如:

window.btoa('zhangxinxu');

// 返回:'emhhbmd4aW54dQ=='

btoa這個方法名稱乍一看,很奇怪,不知道這個單詞什么意思。我們可以理解為 B to A,也就是從B到A。那B指什么,A指什么呢?和atob方法一樣,B指的是low B普通字符串,A指的是Base64字符。

因此,btoa方法表示low B普通字符to Base64字符,也就是Base64編碼。

3. IE8/IE9的polyfill

當(dāng)下,仍有不少PC項目還需要兼容IE9,所以,我們可以專門針對這些瀏覽器再引入一段ployfill腳本或者一個JS文件即可。

實際使用,我們可以借助IE條件注釋無縫對接。也就是HTML中嵌入下面一段代碼:

JS Base64編碼解碼的示例分析

[if IE]表示所有IE瀏覽器,由于IE10+瀏覽器已經(jīng)放棄了著名的IE條件注釋的支持,Chrome等瀏覽器本身就不支持這個IE私有語法,因此,很天然的,上面一段script引入只在IE9-瀏覽器下有效。而我們本來就希望只IE8,IE9瀏覽器引入ployfill,于是正好完美銜接上。

也就是原生支持atob和btoa方法的瀏覽器認(rèn)為就是一段無需關(guān)心的HTML注釋,不支持atob和btoa的IE9及其以下瀏覽器則會加載我們的base64-polyfill.js,使瀏覽器也支持window.btoa和window.atob這個語法。

以上是“JS Base64編碼解碼的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!


名稱欄目:JSBase64編碼解碼的示例分析
當(dāng)前地址:http://www.xueling.net.cn/article/pjsgjs.html

其他資訊

在線咨詢
服務(wù)熱線
服務(wù)熱線:028-86922220
TOP
主站蜘蛛池模板: 精品国产乱码久久久久久老虎 | 久久国产香蕉 | av免费在线播放网站 | 国产足浴漂亮丰满技师av | 大伊香蕉精品一区视频在线 | 亚洲中文字幕无码一区二区三区 | aykkk伦理| 五月丁香亚洲综合无码 | 99久久久国产精品免费四虎 | 久久综合国产精品台湾中文娱乐网 | 免费一区二区在线观看 | 中国大陆一级毛片 | 一级大片网站 | 免费国产a国产片高清不卡 欧美激欧美啪啪片 | 蜜芽国内精品视频在线观看 | 噼里啪啦动漫在线观看免费 | 蜜臀一区二区三区 | 成年人免费观看 | 每日在线更新av | 中文字幕久久精品一区二区三区 | 色综合久久久无码中文字幕 | 亚洲精品在线成人 | 热久久精品国产 | 麻豆一区二区三区精品视频 | 国产性爱自拍av | 天天看AV片在线观看 | 国产线视频精品免费观看视频 | 亚洲人成综合第一网 | 999成人免费视频 | 國產九九精品 | 嘿咻嘿咻免费区在线观看 | 日本毛茸茸的丰满熟妇 | 国产福利a级 | 国产亚洲精品久久久久久移动网络 | 97久久夜色精品国产九色 | 国产农村女人一级毛片了 | 全部免费的a毛片在线看 | 超级碰在线 | 久久婷婷人人澡人人爽人人喊 | 国模少妇一区两区三区 | 亚洲国产无线乱码在线观看 |