我在获取图像尺寸方面遇到了问题.我想知道图像的宽度和高度,而不是加载到文档中.目前我的代码如下:
function getImageSize (path) {
var image = new Image();
image.name = path;
var d = image.onload = function() {
var w = this.width;
var h = this.height;
return {width : w, height : h};
}();
image.src = path;
return d;
}
Run Code Online (Sandbox Code Playgroud)
如果我调用该函数,我会在两个索引(w,h)中得到包含undefined的对象.我试过不通过排除括号(8行)调用onload处理程序,但我得到的是功能代码.
请注意,如果我alert(w)在onload处理程序体内调用,我可以看到图片的宽度,但不在外面.
有人知道如何解决这个问题吗?我怎样才能获得图像尺寸?
我的代码如下:
def sum(a, b)
a + b
end
puts sum.call 2, 3
Run Code Online (Sandbox Code Playgroud)
我得到一个错误:
wrong number of arguments (given 0, expected 2) (ArgumentError)
Run Code Online (Sandbox Code Playgroud)
我该如何调用函数?
编辑
我希望有一个函数能够调用具有某些参数的其他函数.我编写了如下代码,但仍然显示相同的错误.
def sum(a, b)
a + b
end
def kall(func, *args)
send(func, *args)
end
puts kall(sum, 2, 3)
Run Code Online (Sandbox Code Playgroud)