为了了解Blob及其用法,我发现这很有趣document。
文件部分的末尾,将显示以下代码。我有一个关于回调函数的问题。
function _toBlob(url, callback) {
var xhr = new XMLHttpRequest();
xhr.responseType = "blob";
xhr.onload = function() {
// In the next line callback takes two parameters.
callback(xhr.response, url);
};
xhr.open("GET", url);
xhr.send();
}
// In the following code the second parameter is a function that takes only one argument.
_toBlob(location.href, function(blob) {
var blobURL = URL.createObjectURL(blob);
var file = new File([blob], "foo.html"); // Or new File(blob, ...)
});
查看上面代码的上部, function _toBlob(url,callback){...} ; callback 似乎是一个带有两个参数的函数。 另一方面, _toBlob()函数的第二个参数是仅使用一个参数的函数。
有人可以解释这里发生了什么吗?