728x90
반응형
자바스크립트는 일단 오버로딩 함수를 지원하지 않는다. 다만 매개 변수를 검사하는 방법으로 오버로딩이 되는 것처럼 응용할 수 있다.
function view(){
alert(val);
}
function view(v){
alert(v);
}
함수 선언을 이런 방법으로 했다면 첫번째 view()는 무시되고 view(v)로 인식하게 된다. 브라우저 버전에 따라 동일한 함수명을 사용 할 때 오류가 발생할 수도 있다.
매개변수 개수에 따라 함수 기능을 다르게 하는 방법은 아래 예문과 같다.
function view(){
var a = arguments;
switch (a.length){
case 1: //-- 매개변수가 하나일 때
var val = a[0];
alert(val);
break;
case 2: //-- 매개변수가 두 개 일 때
var val = a[0];
var val2 = a[1];
alert(val + val2);
break;
}
}
view("변수1");
view("변수1", "변수2");
switch문을 이용해 매개변수의 개수에 따라 처리 내용을 달리 할 수 있다.
자바스크립트에서는 함수의 매개변수의 개수를 이용하여 마치 오버로딩 함수처럼 사용자 함수를 구현 할 수 있다.
728x90
반응형
'프로그래밍 > CSS & JS & Jquery' 카테고리의 다른 글
jQuery.mobile.css 사용 할 때 css 원하는대로 변경하기 (0) | 2019.09.17 |
---|---|
자바스크립트, Jquery를 이용해 DIV, SPAN 등 요소(element)를 배열로 사용하고 싶을 때 (0) | 2019.09.16 |
상하로 화면 스크롤 시 jQuery로 상단 메뉴(레이어) 고정 시키기 (0) | 2019.09.06 |