javascript - js中如何将数组转化为base64encode的字符串?

查看:627
本文介绍了javascript - js中如何将数组转化为base64encode的字符串?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

数组就像这样:

[21,23,0,0,0,0,21,255,43,154,87,32,4,13,64,7,86,52,1,23,16,57,73,1]

若是btoa([21,23,0,0,0,0,21,255,43,154,87,32,4,13,64,7,86,52,1,23,16,57,73,1])
结果如下:
"MjEsMjMsMCwwLDAsMCwyMSwyNTUsNDMsMTU0LDg3LDMyLDQsMTMsNjQsNyw4Niw1MiwxLDIzLDE2LDU3LDczLDE="
atob("MjEsMjMsMCwwLDAsMCwyMSwyNTUsNDMsMTU0LDg3LDMyLDQsMTMsNjQsNyw4Niw1MiwxLDIzLDE2LDU3LDczLDE=")
"21,23,0,0,0,0,21,255,43,154,87,32,4,13,64,7,86,52,1,23,16,57,73,1"
转过去再转回来已经变成"21,23,0,0,0,0,21,255,43,154,87,32,4,13,64,7,86,52,1,23,16,57,73,1"这样的= =
好吧。。我脑袋秀逗了,忘记还有分割文本然后Parserint还原了。。。等会自己上答案

解决方案

var arry = [21, 23, 0, 0, 0, 0, 21, 255, 43, 154, 87, 32, 4, 13, 64, 7, 86, 52, 1, 23, 16, 57, 73, 1];
            var str = base64Encode(arry);//转换字符串
            console.log(str);
            var arry2= base64Decode(str).split(',');
            console.log(arry2);//转回数组

            function base64Encode(input) {
                var rv;
                rv = encodeURIComponent(input);
                rv = unescape(rv);
                rv = window.btoa(rv);
                return rv;
            }
            function base64Decode(input) {
                rv = window.atob(input);
                rv = escape(rv);
                rv = decodeURIComponent(rv);
                return rv;
            }

这篇关于javascript - js中如何将数组转化为base64encode的字符串?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆