在之前的開發過程中,遇到base64的編譯碼,習慣性的去尋找了開源的base64編譯碼庫,如base64.js
使用方式很簡單,一般開源的庫都會提供對應的使用文件
今天才突然發現,原來瀏覽器原生支援base64編譯碼,引入外部依賴庫,簡直是多次一舉!!
實際上,從ie10+瀏覽器開始,所有瀏覽器就原生提供了base64編碼解碼方法,不僅可以用於瀏覽器環境,service worker環境也可以使用。
方法名就是atob和btoa,具體語法如下:
base64編碼 - btoa
var encodeddata = window.btoa(stringtoencode); // (瀏覽器中)
var encodeddata = self.btoa(stringtoencode); // (瀏覽器或js worker執行緒中)
例如:
window.btoa('/etc/mysql/my.cnf') => 'l2v0yy9texnxbc9tes5jbmy='
base64解碼 - atob
var decodeddata = window.atob(encodeddata); // (瀏覽器中)
var decodeddata = self.atob(encodeddata); // (瀏覽器或js worker執行緒中)
例如:
window.atob('l2v0yy9texnxbc9tes5jbmy=') => '/etc/mysql/my.cnf'
瀏覽器內建的base64方法
base64是一種基於64個可列印字元來表示二進位制資料的表示方法。在base64中的可列印字元包括字母a z a z 數字0 9,這樣共有62個字元,此外兩個可列印符號在不同的系統中而不同 維基百科 在url傳輸資料時,會用到base64編碼。為什麼 以前在編碼解碼的時候,都需要在網上找base6...
base64編譯碼原理
base64 base64的編碼都是按字串長度,以每3個8bit的字元為一組,然後針對每組,首先獲取每個字元的ascii編碼,然後將ascii編碼轉換成8bit的二進位制,得到一組3 8 24bit的位元組 然後再將這24bit劃分為4個6bit的位元組,並在每個6bit的位元組前面都填兩個高位0,...
base64編碼和解碼,原生js
實際上,從ie10 瀏覽器開始,所有瀏覽器就原生提供了base64編碼解碼方法,不僅可以用於瀏覽器環境,service worker環境也可以使用。方法名就是atob和btoa,具體語法如下 1 base64解碼 語法為 瀏覽器中 var decodeddata window.atob encode...