JavaScript回调函数return传值
JavaScript callback function return value pass
我厌倦了 return 回调函数中的值。
我如何在这段代码中 return 值?
let image = new Image();
image.onload = function createResolation() {
var width = this.width;
var height = this.height;
return width, height;
};
image.src = URL.createObjectURL(image);
createResolation();
我喜欢对 return 多个值做的只是 return 一个对象。
所以使用你的例子,你会:
let image = new Image();
let myImage = {};
image.onload = function (dimensions) {
var width = dimensions.width;
var height = dimensions.height;
//Option A (move your "constructor code" to another function)
createResolution(width, height)
//Option B
myImage.width = width;
myImage.height = height;
};
image.src = URL.createObjectURL(image);
function createResolution(width, height) {
//Here you can store the dimensions
myImage.width = width;
myImage.height = height;
});
这更像是您要完成的工作:
let image = new Image();
function createResolution (dimensions) {
this.width = dimensions.width;
this.height = dimensions.height;
};
image.onload = createResolution;
我厌倦了 return 回调函数中的值。 我如何在这段代码中 return 值?
let image = new Image();
image.onload = function createResolation() {
var width = this.width;
var height = this.height;
return width, height;
};
image.src = URL.createObjectURL(image);
createResolation();
我喜欢对 return 多个值做的只是 return 一个对象。
所以使用你的例子,你会:
let image = new Image();
let myImage = {};
image.onload = function (dimensions) {
var width = dimensions.width;
var height = dimensions.height;
//Option A (move your "constructor code" to another function)
createResolution(width, height)
//Option B
myImage.width = width;
myImage.height = height;
};
image.src = URL.createObjectURL(image);
function createResolution(width, height) {
//Here you can store the dimensions
myImage.width = width;
myImage.height = height;
});
这更像是您要完成的工作:
let image = new Image();
function createResolution (dimensions) {
this.width = dimensions.width;
this.height = dimensions.height;
};
image.onload = createResolution;