JavaScript中的JSON编码/解码base64编码/解码

问题描述:

JavaScript中是否存在JSON编码/解码base64编码/解码功能?JavaScript中的JSON编码/解码base64编码/解码

+0

可能重复[如何base64编码内部的JavaScript](http://*.com/questions/3774622/how-to-base64-encode-inside-of-javascript)。搜索很难,显然。 http://*.com/search?q=javascript+base64 – 2011-01-12 03:28:03

+0

看看:http://www.json.org/js.html – Alexar 2011-09-27 03:19:33

是,BTOA()和ATOB()的工作在某些浏览:

var enc = btoa("this is some text"); 
alert(enc); 
alert(atob(enc)); 
+16

``一些浏览器“===”壁虎和WebKit“` – 2011-01-12 03:24:15

+4

@Matt Ball。大多数语言会反驳:) – Ben 2011-01-12 03:25:42

JSON和BASE64是完全独立的。 (以及direct GitHub link)。

Here's a base64 Q&AHere's another one

对于非Mozilla浏览器,使用方法:http://www.webtoolkit.info/javascript-base64.html

对于Mozilla的浏览器,使用btoa()atob()

我不认为有一个内置的,但这里的JSON的功能jQuery的:(因为我是新不能发布链接)
jQuery.getJSON
jQuery.parseJSON

和这里是javascript中base64编码的链接。
http://www.webtoolkit.info/javascript-base64.html

推荐给其他人看到。使用此项目crypto-js和原型解析JSON的组合我写了两个功能编码/解码JSON到基站64(这些功能不检查格式不正确JSON)的

 

    function JSONtoBase64(jsonObj) { 
     return Crypto.util.bytesToBase64(Crypto.charenc.UTF8.stringToBytes(Object.toJSON(jsonObj))); 
    }; 

    function base64ToJSON(bytes) { 
     var jsonString = Crypto.charenc.UTF8.bytesToString(Crypto.util.base64ToBytes(bytes)); 
     return jsonString.evalJSON(); 
    };