【JavaScript 笔记】二进制数组转十六进制字符串 && 十六进制字符串转二进制数组 && 字节流二维码
作者:广树 | 时间:2018-6-22 10:45:58 | 分类 : JavaScript/jQuery/Vue
因为需要需要生成一张字节流二维码,然后研究了下原理大致是:
十六进制数据→二进制数组→通过fromCharCode转换回字符串→通过qrious等不支持生成中文二维码的二维码生成库生成二维码。
用到的代码如下:
十六进制字符串转二进制数组:
- /**
- * @desc 十六进制字符串转二进制数组
- */
- function Str2Bytes(str){
- var pos = 0;
- var len = str.length;
- if (len % 2 != 0){
- return null;
- }
- len /= 2;
- var hexA = new Array();
- for (var i = 0; i < len; i++){
- var s = str.substr(pos, 2);
- var v = parseInt(s, 16);
- hexA.push(v);
- pos += 2;
- }
- return hexA;
- }
附带转回去:
- /**
- * @desc 二进制数组转十六进制字符串
- */
- function Bytes2Str(arr){
- var str = "";
- for (var i = 0; i < arr.length; i++){
- var tmp = arr[i].toString(16);
- if (tmp.length === 1){
- tmp = "0" + tmp;
- }
- str += tmp;
- }
- return str;
- },
生成二维码用的字符串
- var QRText = String.fromCharCode.apply(null, byteArr);//二维码字符串
最后通过qrious插件生成二维码
赞一个0

2018-06-29 18:20