zoukankan      html  css  js  c++  java
  • JS GZIP压缩

    GZIP压缩,GZIP解压需要用到 pako.js 文件:下载地址:https://download.csdn.net/download/qq_35713752/10627338

    使用方法:

    JS压缩和解压:


    var pako = require('../../utils/pako.min.js');
    Page({
    data: {
    },
    onShow: function () {
    var key = 'absd';
    var _data = '{"body":{"banners":[],"ptypes":[{"addr":1,"productTypes":[1]},{"addr":2,"productTypes":[2]},{"addr":3,"productTypes":[3]}]},"success":true}';
    var data = zip(_data);
    console.log("压缩data:",data);
    console.log("解压压缩后的data:",unzip(data));
    var time = new Date().getTime();
    for (let i = 0; i < 1000; i++) {
    zip(_data)
    }
    console.log('压缩一千次使用时间/毫秒:', new Date().getTime() - time)
    },
    })

    // 解压
    function unzip(key) {
    // 将二进制字符串转换为字符数组
    var charData = key.split('').map(function (x) { return x.charCodeAt(0); });
    console.log('压缩后的文件大小:', charData.join(","))

    // 将数字数组转换成字节数组
    var binData = new Uint8Array(charData);

    // 解压
    var data = pako.inflate(binData);

    // 将GunZip ByTAREAR转换回ASCII字符串
    key = String.fromCharCode.apply(null, new Uint16Array(data));

    //unescape(str) --->解压后解码,防止中文乱码
    return unescape(key);
    }

    // 压缩
    function zip(str) {
    //escape(str) --->压缩前编码,防止中文乱码
    var binaryString = pako.gzip(escape(str), { to: 'string' });
    return binaryString;

    ————————————————
    版权声明:本文为CSDN博主「a_靖」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/qq_35713752/article/details/82079629

  • 相关阅读:
    【python之路39】Python 正则表达式
    【html、CSS、javascript-4】新特征之增强表单
    node调试工具--node-inspector安装
    node多版本管理--nvmw
    transform的影响
    HTML5 input事件检测输入框变化[转载]
    mysql5.7.16安装 初始密码获取及密码重置
    undefined 与void 0
    html 自定义标签使用实现方法
    图片轮播滚动
  • 原文地址:https://www.cnblogs.com/lhxsoft/p/11693162.html
Copyright © 2011-2022 走看看