javascript - js怎样判断一个图片是不是base64
问题描述
多个img标签,每个标签的src都不一样,
现在需要分别对src为base64编码的和非base64的图片做不同的处理,
javascript应该如何区分该图片是不是base64的?
问题解答
回答1:BASE64码开头都是形如data:image/xxx;base64,xxxxxx...的,所以写个正则测试一下src就可以了
回答2:$(’img’).each((i,item)=>{ let src = item.src if(src.indexOf(’data:image/jpg;base64,’)>-1){// base64 图片操作 }else{//path 图片操作 }})回答3:
非base64图片都是URL地址吗
回答4:直接根据src开头匹配就行
$(’img’).each((i,item)=>{ let src = item.src if(src.indexOf(’data:image’)>-1){// base64 图片操作 }else{//path 图片操作 }})回答5:
要用startWith,这样效率高:
$(’img’).each((i,item)=>{ let src = item.src if(src.startWith(’data:image’)){// base64 图片操作 }else{//path 图片操作 }})回答6:
function validDataUrl(s) { return validDataUrl.regex.test(s);}validDataUrl.regex = /^s*data:([a-z]+/[a-z0-9-+.]+(;[a-z-]+=[a-z0-9-]+)?)?(;base64)?,([a-z0-9!$&’,()*+;=-._~:@/?%s]*?)s*$/i;module.exports = validDataUrl;
相关文章:
1. docker绑定了nginx端口 外部访问不到2. javascript - [MUI 子webview定位]3. Docker for Mac 创建的dnsmasq容器连不上/不工作的问题4. dockerfile - 为什么docker容器启动不了?5. angular.js - angular内容过长展开收起效果6. macos - mac下docker如何设置代理7. docker网络端口映射,没有方便点的操作方法么?8. javascript - 新组成的数组打印出来出现问题,里面有对象,但长度为空9. angular.js使用$resource服务把数据存入mongodb的问题。10. vue.js - Vue APP基于webpack的项目,它是独立的项目吗?我后台是Java的,要如何实现,跨域请求吗?大牛请教一下谢谢

网公网安备