JavaScript将值设置为父函数中定义的变量
JavaScript set value to variable defined in parent function
我想返回imageSize,但它返回未定义。我很困惑,我试过很多东西。在警报中,我得到了尺寸。
getImageSize : function(file) {
var reader = new FileReader();
var image = new Image();
var imageSize;
reader.readAsDataURL(file);
reader.onload = function(_file) {
image.src = _file.target.result;
image.onload = function() {
imageSize = ~~(file.size/1024) +'KB';
alert(imageSize);
};
};
return imageSize;
}
由于异步加载图像,因此无法直接返回大小。你能做的最好的事情就是传入一个回调函数,当大小可用时调用:
getImageSize : function(file, callback) {
var reader = new FileReader();
var image = new Image();
var imageSize;
reader.readAsDataURL(file);
reader.onload = function(_file) {
image.src = _file.target.result;
image.onload = function() {
imageSize = ~~(file.size/1024) +'KB';
callback(imageSize);
};
};
}
相关文章:
- Socket.IO未定义变量
- 像createComment这样的各种自定义变量名在内联javascript中被覆盖,但在外部js中没有.为什么?
- 已定义变量出现未定义错误
- 使用eval()定义变量显示未定义的错误
- 在javascript变量中添加php定义变量
- 如何在来自另一个文件的控制器中定义变量
- 如何在不定义变量的情况下使用 document.createElement()
- 清除 Javascript 中窗口对象中的自定义变量
- 更改 Javascript 对象中所有未定义变量的值
- 定义变量是否比在 JS 中覆盖变量使用更多的资源
- 是否有类似Object.defineProperty的方法来定义变量
- coffeescript,类未定义变量
- 使用下划线未定义变量时发生抛出/捕获错误
- 如何为ajax定义变量,以及addeventlistener/pushstate函数?Javascript,而不是jQu
- 网络浏览器正在成为“;严格的“;用于Javascript中未定义变量的操作
- 使用window.location时未定义变量
- 在条件(if)结构的条件语句中是否有定义变量的有效方法
- 传递给数据的未定义变量
- bizzare未定义变量
- JavaScript 中全局范围内存在未定义变量的原因是什么?