blob的浅谈

blob的浅谈

三个方面:是什么 有什么作用 例子🌰

bolb是什么

自己的理解:
	blob接收两个参数
		第一个参数是一个array,第二个参数为Object,属性type为文件的类型
		array 是一个由ArrayBuffer, ArrayBufferView, Blob, DOMString 等对象构成的 Array ,或者其他类似对象的混合体,它将会被放进 Blob。DOMStrings会被编码为UTF-8
		DOMStrings 为 <div>DOMStrings</div>
		
		
		blob的返回值为一个Object,然后可以里边的size表示文件的大小,type表示文件的类型(此类型为创建时的type类型)
	
		blob的方法,这里举一个🌰  其余方法 MDN链接https://developer.mozilla.org/en-US/docs/Web/API/Blob
		
			text() 会解析blob这个数据,返回一个Promise,里边的数据为UTF-8 
					会把blob转换的数据,变为UTF-8的格式,可以使用浏览器直接读取
					let elNode=new Blob(['<div>DOMStrings</div>'],{type:"text/html"})
					elNode.text().then(date=>{
							可以直接渲染到页面上
							xxxxx.innerHTML=date
					})

有什么作用(读取文件,生成一个二进制的文件地址,防止盗用)

结合window.URL.createObjectURL()
	
	生成一个文件的地址
		首先搞一个input type="file"  上传一个文件
		
		然后获取到这个input框,然后读取出files[0] 
		
		声明一个blob,然后第一个参数传入files[0] ,第二个参数的type就为{type:file.files[0].type}
		
		
		然后会返回blob数据,然后使用window.URL.createObjectURL生成指向这个文件的地址
		
		然后就会返回一个地址,这个地址指向的就是file上传的文件,可以使用window.open打开
		
		
	

例子🌰

	🌰
		let file=document.querySelector(".file")
      file.onchange=function(e){
        let c=new Blob([file.files[0]],{type:file.files[0].type})
       	window.open(window.open(window.URL.createObjectURL(c)))
      }
      
  🌰
  	let b=new Blob(['<div>DOMStrings</div>'],{type:"text/html"})
    document.querySelector(".text").onclick=()=>{
      b.text().then(date=>{
        document.querySelector(".text").innerHTML=date
      })		
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值