首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏采云轩

    JS 图片压缩

    前言 说起图片压缩,大家想到的或者平时用到的很多工具都可以实现,例如,客户端类的有图片压缩工具 PPDuck3, JS 实现类的有插件 compression.js ,亦或是在线处理类的 OSS 上传, 文件上传后,在访问文件时中也有图片的压缩配置选项,不过,能不能自己撸一套 JS 实现的图片压缩代码呢? 压缩思路 涉及到 JS 的图片压缩,我的想法是需要用到 Canvas 的绘图能力,通过调整图片的分辨率或者绘图质量来达到图片压缩的效果,实现思路如下: 获取上传 Input 中的图片对象 File 将图片转换成 = new Uint8Array(rawLength); for(let i = 0; i < rawLength; ++i) { uInt8Array[i] = raw.charCodeAt Api 解析:Uint8Array new Uint8Array(length) length 创建初始化为 0 的,包含 length 个元素的无符号整型数组。

    32.4K21发布于 2020-04-27
  • 来自专栏大宇笔记

    JS 压缩混淆

    概念介绍 昨天接到了一个任务,H5  app 的JS CSS 需要压缩,混淆。 然后怎么办呢? 首先理解下压缩混淆是指什么 压缩 compress: 去掉空格,换行,注释等,格式紧凑,节约存储空间。 混淆 obfuscate/garble:替换变量名或方法名,让js不容易看懂。 百度一下js压缩,混淆会搜到一堆在线混淆加密的网页,但是这些都不是你想要的。 --screw-ie8 是否要支持IE6/7/8。UglifyJS默认不兼容IE。 --support-ie8 是否要支持IE6/7/8,等同于在`compress`, `mangle` 和

    16.6K20发布于 2019-01-15
  • 来自专栏OECOM

    使用uglifyjs压缩js

    在做的web项目上线时,我们需要对js文件进行压缩,以减小文件的体积,加快加载速度,提高响应时间。下面我来介绍一个js压缩工具:uglifyjs。 最简单的使用方式: uglifyjs main.js -o main-min.js -c 下面是一些压缩时常用的参数 一些常用的参数列表 -o,--output 指定输出文件,默认情况下为命令行 懒人有懒法,花了点功夫,折腾了一个批处理文件,以后,想要压缩JS,只要双击运行这个.bat文件就可以了! 完整代码如下: @echo off :: 设置压缩JS文件的根目录,脚本会自动按树层次查找和压缩所有的JS SET JSFOLDER=C:\Users\Administrator\Desktop\formini 然后双击就可以批量使用uglifyjs压缩JS文件啦! 注意:uglifyjs不支持ES6

    6.8K20发布于 2020-07-01
  • 来自专栏javascript技术

    JS压缩(javascript minify)

    什么是js压缩js代码压缩,简称js压缩,英文叫作:javascript minifyjs压缩的作用js压缩主要有两个作用:1、压缩代码体积主要目的是提高代码传输效率。 2、增强代码安全性可以说,JS压缩也是一种JS混淆加密。你没听错,JS压缩,可以降底代码可读性。对于既要代码有一定安全性、又要代码体积小的需求而言,JS压缩,是个折中且不错的方案。 为什么压缩代码能具有混淆的效果,下面会讲。如何进行JS压缩当然是使用工具了。国内国外,在线的JS压缩小工具很多,一搜一大把,但质量差别很大。 众所周知,JShaman是国内JS混淆加密界的知名厂商。所以他们出品的JS压缩工具,品质信的过。下面简单使用教学:主要看有哪些功能,再看压缩率。功能配置:1、去除未使用的函数。 例,压缩前的代码:var var_variable_one = 1; var var_variable_two = 2;压缩后:var _0_ = 1; var _0_2 = 2;8、函数名变短。

    25810编辑于 2025-11-07
  • 来自专栏javascript技术

    JS实现html压缩

    要实现 HTML 压缩,可以使用 JavaScript 中的正则表达式来去除 HTML 中的空格和注释。 以下是一个简单的 HTML 压缩函数:function compressHTML(html) { // 去除注释 html = html.replace(/

    7.7K30编辑于 2023-05-04
  • 来自专栏Nodejs技术栈

    详解 JS 压缩图片

    插播一下,本文案例已整理成插件,已上传 npm ,可通过 npm install js-image-compressor -D 安装使用,可以从 github 下载。 JavaScript 操作压缩图片原理不难,已有成熟 API,然而在实际输出压缩后结果却总有意外,有些图片竟会越压缩越大,加之终端(手机)类型众多,有些手机压缩图片甚至变黑。 ? 主要思路是:先将 data URL 数据(data) 部分提取出来,用 atob 对经过 base64 编码的字符串进行解码,再转化成 Unicode 编码,存储在Uint8Array(8位无符号整型数组 ,/; var mime = dataUrl.match(mimePattern)[1]; var binStr = atob(data); var arr = new Uint8Array 将改进版图片压缩整理成插件,已上传 npm ,可通过 npm install js-image-compressor -D 安装使用,可以从 github 下载。 整理匆忙,如有问题欢迎大家指正,完~

    15.3K31发布于 2020-09-17
  • 来自专栏javascript技术

    js加密”和“js压缩”有什么不同?

    问:“js加密”和“js压缩”有什么不同?答:“js加密”是让js代码变的看不懂;“js压缩”是让js代码变的更小。 例:一句js代码:var name_age = "tom" + 18;用JShaman进行“js加密”,会变成:var _0x186fc6="\u0074\u006f\u006d"+(0x88155^0x88147 );而如果用JShaman进行“js压缩”,会变成:var _n="tom18";“js加密”和“js压缩”的不同,相信你get了吧。

    1.9K10编辑于 2024-10-12
  • 来自专栏deepcc

    sublime text2之js压缩-Js Minifier

    一款基于Google Closure compiler压缩Js文件插件。 快捷键: Ctrl+Alt+M            当前文件内压缩Js代码(不推荐) Ctrl+Alt+Shift+M   压缩Js并生成压缩文件 *.min.js 安装成功重启,如果报错,在配置里改一个参数 ,"compiler": "uglify_js", { // the closure compiler adds new lines every 500 characters // for WHITESPACE_ONLY", // the compiler to use for minification. // Accepted values are: google_closure|uglify_js "compiler": "uglify_js", // when you create a file you want to automatically open it?

    5.7K130发布于 2018-05-16
  • 来自专栏python3

    python版js压缩工具

    发现一个好用的python版js压缩工具 Posted on 2012年09月18日 by 空华叔 · Leave a comment https://github.com/rspivak/ slimit 灰常好的工具,压缩比高,代码兼容性好,可媲美主流压缩工具~ 做了下简单的benchmark: #raw 256K jquery-1.8.1.js #download from jquery.com 92K jquery-1.8.1.min.js 36K jquery-1.8.1.min.js.gz #http://closure-compiler.appspot.com 84K jquery -1.8.1.google.advanced.js 32K jquery-1.8.1.google.advanced.js.gz 92K jquery-1.8.1.google.simple.js jquery-1.8.1.yui.js 24K jquery-1.8.1.yui.js.gz #slimit 96K jquery-1.8.1.slimit.js 36K jquery-1.8.1

    6.9K20发布于 2020-01-13
  • 来自专栏服务器运维笔记

    工程化(8): JS 体积优化之代码压缩混淆的原理是什么?

    现代前端工程中,一般使用 terser 进行压缩混淆 JS压缩后代码如下: function sum(a,b){return a+b} 替换掉多余字符后会有什么问题产生呢? 「有,比如多行代码压缩到一行时要注意行尾分号。」 合并声明的示例如下: // 压缩前 const a = 3; const b = 4; // 压缩后 const a = 3, b = 4; 布尔值简化的示例如下: // 压缩前 !b && ! e // 压缩后 ! // 压缩前 function hello () { console.log('hello, world') } hello() // 压缩后 console.log('hello, world

    2.4K10发布于 2021-10-18
  • 来自专栏前端专栏

    JS压缩上传的图片

    图片压缩的原理:将图片重新画入到canvas画布里面,再将canvas转成图片的形式。 图片压缩js代码: function compressedImg(path, callback) { var img = new Image(); img.src = path; DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-<em>8</em>"> <title>JS图片压缩</title> </head> <body onchange="selectImg(this)">
    <script src="jquery-2.1.1.<em>js</em> .split(':')[1].split(';')[0]; var ab = new ArrayBuffer(byteString.length); var ia = new Uint<em>8</em>Array

    40.2K20编辑于 2022-06-09
  • 来自专栏大猪的笔记

    js笔记:字符串压缩

    使用lz-string包可以进行字符串压缩。 导入包: <script type="text/javascript"          src="/static/<em>js</em>/lz-string.min.<em>js</em>"></script> <script type

    9.3K20发布于 2019-11-22
  • 来自专栏全栈程序员必看

    js解压gzip数据_gzip 压缩

    GZIP压缩,GZIP解压需要用到 pako.js 文件: 使用方法: JS压缩和解压: var pako = require('../.. /utils/pako.min.js'); Page({ data: { }, onShow: function () { var key = 'absd'; var _data :[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 :', charData.join(",")) // 将数字数组转换成字节数组 var binData = new Uint8Array(charData); // 解压 var data

    10.1K10编辑于 2022-10-04
  • 来自专栏铭毅天下

    Elasticsearch 8.x 存储有无压缩?能压缩到多少?

    1、认知前提 Elasticsearch 支持压缩压缩方式默认为:LZ4 压缩算法。 中文翻译为: 默认值使用 LZ4 压缩压缩存储的数据,但这可以设置为 best_compression,它使用 DEFLATE 来获得更高的压缩率,但会降低存储字段的性能。 2、动手验证一下压缩比到底能压缩多少? 2.1 样例数据准备 以 kibana_sample_flights 飞行数据为例进行验证。 LZ4 算法能压缩到一半! 新压缩算法 best_compression 压缩后,压缩为原始空间的:35%,也就是能省65%的空间。 压缩比要求高推荐使用:best_compression。

    1.1K10编辑于 2024-07-15
  • 来自专栏友儿

    简单用php压缩css、js输出

    所谓的压缩,无非就是把换行空格等符号替换为空 css <? /test1.css ob_end_flush(); //浏览器打开,输出压缩后的内容 ?> js <? zlib')) { ob_start('ob_gzhandler'); } header("content-type:application/x-javascript; charset: UTF-8" 文件一'); //例如当前PHP文件下的main.js include('js文件二'); //复制调用更多JS文件 if (extension_loaded('zlib')) { ob_end_flush (); //输出压缩后的内容 } ?

    1.5K20编辑于 2023-10-21
  • 来自专栏全栈程序员必看

    性能优化之YUICompressor压缩JS、CSS

    压缩,指定压缩后的文件名为index-min.js。 /Downloads/yuicompressor-2.4.7.jar --type js --charset utf-8 -v --verbose /Users/longwentao/Downloads /index.js -o /Users/longwentao/Downloads/index-min.js 压缩后在/Users/longwentao/Downloads/目录下多出一个index-min.js static final String encoding = "utf-8"; private static final String[] suffixArray = { ".js", ".css -2.4.7.jar --type js --charset utf-8 /Users/longwentao/java/shell/rcm.js -o /Users/longwentao/java/shell

    4.8K40编辑于 2022-09-09
  • 来自专栏Super 前端

    压缩JS,提高代码执行速度

    本文链接:https://ligang.blog.csdn.net/article/details/40981147 压缩JS java -jar yuicompressor-2.4.jar --type js xxx.js -o xxx.js --charset utf-8 压缩CSS java -jar yuicompressor-2.4.jar --type css xxx.css -o xxx.css --charset utf-8 java的Runtime.getRuntime().exec(commandStr)可以调用执行cmd指令。 PS:压缩CSS时,会影响JS和其他类型文件!!! 压缩JS时,无问题,建议压缩哪类文件时单放置哪类文件!!! css "+string+" -o "+string+" --charset utf-8"; Runtime.getRuntime().exec("cmd /c D: & cd "+dir+"

    3.3K31发布于 2019-08-15
  • 来自专栏编程

    Python模块知识8:configparser、压缩模块

    importconfigparser#导入模块 config=configparser.ConfigParser()#必须的装载语句 config.read('black.txt',encoding='utf-8' importconfigparser#导入模块 config=configparser.ConfigParser()#必须的装载语句 config.read('black.txt',encoding='utf-8' importconfigparser#导入模块 config=configparser.ConfigParser()#必须的装载语句 config.read('black.txt',encoding='utf-8' () 2)解压缩 import zipfile z=zipfile.ZipFile('a.zip','r') z.extractall()#解压全部 for item in z.namelist(): print(item,type(item)) z.close() 三、tar文件夹解压 1)压缩 import tarfile tar = tarfile.open('your.tar','w')#压缩

    1.1K60发布于 2018-01-11
  • 来自专栏菜鸟计划

    webpack学习(六)打包压缩js和css

    打包压缩js与css 由于webpack本身集成了UglifyJS插件(webpack.optimize.UglifyJsPlugin)来完成对JS与CSS的压缩混淆,无需引用额外的插件, 其命令webpack -p即表示调用UglifyJS来压缩代码,还有不少webpack插件如html-webpack-plugin也会默认使用UglifyJS。 uglify-js的发行版本只支持ES5,如果你要压缩ES6+代码请使用兼容开发分支。 /src/js/main.js' }, output: { filename: "[name]-[hash].js", path: __dirname + limit=8192' } ] }, resolve:{ extensions:['.js','.css','.json'

    5.4K60发布于 2018-04-10
  • 来自专栏Gamma安全实验室

    浅淡v8指针压缩

    “详情请参考:https://en.wikipedia.org/wiki/Tagged_pointer” 对于v8中64位的对象指针,它们的高32位基本是不变的,花费4字节来储存它们会浪费内存空间;所以指针压缩将 v8关于指针压缩的实现 首先我们能想到的实现方式是从0地址开始分配4G内存,确保v8对象分配在这4G内存范围内;v8显然没有这样做,在chrome渲染进程中可能会有多个v8实例,这个方案会导致所有v8实例都来竞争这 “详情请参考:https://v8.dev/blog/pointer-compression” 指针压缩在v8漏洞利用中的影响 首先我们很难泄漏v8堆内存空间的高32位(r13寄存器),也就意味着我们用伪造 ,所以没有指针压缩。 CVE-2020-6418 这个洞也是2020-SCTF浏览器题EasyMojo的v8部分。 poc js // Copyright 2020 the V8 project authors.

    1.7K20发布于 2020-12-23
领券