此函数最多接受三个参数。我希望能够将这些参数传递给回调函数,以便能够检查if语句中的参数。
我使用控制台日志检查了回调中是否存在任何参数,并且没有任何参数。
function foobar(x, y, z) {
$("div").fadeOut(300, function() {
if(arguments.length == 1) {
//nothing
} else if(arguments.length == 2) {
$("div").html(x + y).fadeIn(300);
} else if(arguments.length == 3) {
$("div").html(x + y + z).fadeIn(300);
}
});
}发布于 2014-03-07 09:14:30
arguments引用最近的函数,因此这里是一个fadeOut回调。将foobar函数的参数赋值给新变量:
function foobar(x, y, z) {
var foobarArguments = arguments;
$("div").fadeOut(300, function() {
if(foobarArguments.length == 1) {
//nothing
} else if(foobarArguments.length == 2) {
$("div").html(x + y).fadeIn(300);
} else if(foobarArguments.length == 3) {
$("div").html(x + y + z).fadeIn(300);
}
});
}https://stackoverflow.com/questions/22245850
复制相似问题