2014-03-07 3 views
0

이 함수는 최대 세 개의 매개 변수를 허용합니다. 그 매개 변수를 콜백 함수에 전달하여 if 문에서 인수를 확인할 수 있기를 원합니다.fadeOut 콜백에 함수 매개 변수 전달

콜백에 매개 변수가 있고 아무 것도없는 경우 콘솔 로그를 통해 확인했습니다.

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); 
     } 
    }); 
} 
+0

if, else에 x, y 및 z를 사용 하시겠습니까? x! = null, y! = null ...인지 확인하기에 충분하지 않습니까? – ius

답변

1

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); 
     } 
    }); 
} 
관련 문제