<script>
window.BlobBuilder = window.BlobBuilder || window.WebKitBlobBuilder;
Blob.prototype.slice = Blob.prototype.slice || function(start, length) {
return this.webkitSlice(start, start + length);
}
</script>
Run Code Online (Sandbox Code Playgroud)
这些代码来自Chrome扩展程序的后台页面.任何想法或暗示将受到高度赞赏.
window.BlobBuilder = window.BlobBuilder || window.WebKitBlobBuilder;
Run Code Online (Sandbox Code Playgroud)
这window.BlobBuilder就是设置为已设置的内容,如果它设置为真正的真实; 如果它当前设置为false,则将其设置为window.WebKitBlobBuilder.这是一种通用方法,用于在变量尚未具有真值的情况下为变量赋值.Truthy值是任何不是假值的值,而falsey值是
nullundefinedfalse''0NaN下一行使用类似的语法
Blob.prototype.slice = Blob.prototype.slice || function(start, length) {
return this.webkitSlice(start, start + length);
}
Run Code Online (Sandbox Code Playgroud)
如果当前值是真实的,slice则将Blob原型对象上的函数设置为自身,或者将函数设置为将使用webkitSlice定义的函数this(我假设将WebKitBlobBuilder在此实例中).