본문 바로가기

웹 프로그래밍/JavaScript

[JS] 매개변수의 값이 입력되지 않았을 때(undefined) 처리 방법 4가지

매개변수의 값이 undefined 일 때 처리 방법 3가지

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script>
	function func(a, b, c){
		alert('a: ' + a + ", b: " + b + ", c: " + c);
	}
	
	func(); // a: undefined, b : undefined c:undefined
	func('A'); // a: A, b : undefined c:undefined
	func(10,20); // a: 10, b : 20, c : undefined
	func(10,20,30); // a:10 b: 20 c:30
	
	function func(a, b, c) {

		/* 방법(1)
		
		if(a === undefined)
			a = 0;
		if(b === undefined)
			b = 0;
		if(c === undefined)
			c = 0; 
		*/
		
	    /* 방법(2)
		if(!a) a = 0; // boolean(undefined) => false
		if(!b) a = 0; // boolean(undefined) => false
		if(!c) a = 0; // boolean(undefined) => false
		*/
		
		// 방법(3)
		a = a || 0;
		c = b || 0;
		c = c || 0;
		
		alert('a : ' + a + ', b : ' + b + ', c : ' + c);
	}
	
	
	
</script>
</head>
<body>

</body>
</html>

 

하지만 더 편한 방법이 있다. 아래와같이 사용하면 된다.

	function func(a = 0, b = 0, c = 0) {
		
		alert('a : ' + a + ', b : ' + b + ', c : ' + c);
		
	}