js不常见对象介绍以及base64图片转为文件
base64转图片的代码base64转图片,之后如何保存为一个文件?用js代码或者在线工具即可搞定js代码如下
12345678910111213141516171819202122232425262728293031323334function dataURLtoBlob(dataurl) { var arr = dataurl.split(','); var mime = arr[0].match(/:(.*?);/)[1]; var bstr = atob(arr[1]);// base64解码 var n = bstr.length; var u8arr = new Uint8Array(n); // 开辟一个无符合n*8个字节的空间,最小操作单位为8位比特bit while (n--) { // base64解码之后,需要将每一位放置uint8array对象中 u8arr[n] = bstr.charCodeAt(n); } return ne ...
js-控制台小工具
可视化编辑html123document.designMode='on' // 全局// 或者document.body.contentEditable=true // 指定标签可修改(灵活性高)
两种效果一样,只不过范围不一样
自动copy觉得手动copy麻烦的话,写一个小脚本,执行即可copy
123456789101112// 获取vallet text = "";// 这段选择器,是我们在confluence 维护的sql代码片段。可改成你自己的选择器$('.code .container div').each((i,e)=>text+= $(e).text() + "\n");// 执行copylet input = document.createElement('textarea');input.value = text;document.body.appendChild(input);input.select();document.execCommand(' ...
通用枚举
使用场景我们一般用枚举来代表数字或者字符串,避免魔法值的产生。
有时需要根据数字或字符串获取到对应的枚举。
虽然可以在枚举里面写静态方法根据int获取对应的枚举也可以做到,但是你需要在一个枚举写一个方法,如果有N多个枚举则会非常的冗余类似于这段代码
123456789101112131415161718192021222324@Getterpublic enum Condition { ONCE(0, "满"), EACH_TIMES(1, "每满"), LADDERED(2, "阶梯满"); private final int code; private final String name; Condition(int code, String name) { this.code = code; this.name = name; } // 类似于这段代码 public static Condition getTypeByCode(int code) { ...
javaUtil动态代理
动态代理有很多使用的场景,比如
springAOP切入
spring事务、缓存
自定义业务场景等
本文就是一个动态代理util。为了使用起来更加的方便。之后的文章也有可能用得到。
后续用新文章来分析动态代理的原理
本文的使用场景(点我)
代码123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110import org.springframework.beans.BeanUtils;import org.springframework.cglib.proxy.Enhancer;import org.springframework.cglib.proxy.MethodInterceptor;i ...