1) 연습문제

: 배열 favorites에서 원소의 값이 "Coffee"이거나 "Tea"인 경우에만 원소의 인덱스와 값을 출력하는 프로그램을 작성하라.

 

● 풀이 ① : 반복문을 이용해 배열 favorites의 각 원소에 순차적으로 접근해서 "Coffee"와 "Tea"가 해당하는 배열의 인덱스를 확인하는 조건식을 추가함으로써 출력.

 

<!DOCTYPE html>
<html>
	<head>
   	    <meta charset="utf-8">
  	    <title></title>
	</head>
    
	<body>
 	    var favorites = ["Coffee", "Juice", "Coke", "Milk", "Tea"];
        
	    for (var i = 0; i < favorites.length; i++)
  		    if (i == 0 || i == 4)
         		document.writeln(i + ". " + favorites[i]);
	</body>
</html>

 

배열의 값의 순서는 추후에 달라질 수 있으므로 배열의 값을 비교하는 조건식을 쓰는 것이 낫다.

 

 

● 풀이 ② : 반복문을 이용해 배열 favorites의 각 원소에 순차적으로 접근해서 "Coffee"와 "Tea"라는 배열의 값을 확인하는 조건식을 추가함으로써 출력.

 

<!DOCTYPE html>
<html>
	<head>
   	    <meta charset="utf-8">
  	    <title></title>
	</head>
    
	<body>
 	    var favorites = ["Coffee", "Juice", "Coke", "Milk", "Tea"];
        
	    for (var i = 0; i < favorites.length; i++)
 		    if (favorites[i] == "Coffee" || favorites[i] == "Tea")
         		document.writeln(i + ". " + favorites[i]);
	</body>
</html>

 

연습문제 1의 결과

 

2) 연습문제

: 배열 favorites에서 원소의 값이 "Coke"인 경우에만 "Soft Drink"를 출력하고 그렇지 않으면 원소의 값 그대로를 출력하는 프로그램을 작성하라.

 

<!DOCTYPE html>
<html>
	<head>
   	    <meta charset="utf-8">
  	    <title></title>
	</head>
    
	<body>
 	    var favorites = ["Coffee", "Juice", "Coke", "Milk", "Tea"];
        
	    for (var i = 0; i < favorites.length; i++)
  		if (favorites[i] == "Coke")
         		document.writeln("Soft Drink");
            	else
         		document.writeln(favorites[i]);
	</body>
</html>

 

위와 같은 코드를 for-in 구문으로 더 쉽게 작성할 수 있다.

 

<!DOCTYPE html>
<html>
	<head>
   	    <meta charset="utf-8">
  	    <title></title>
	</head>
    
	<body>
 	    var favorites = ["Coffee", "Juice", "Coke", "Milk", "Tea"];
        
	    for (var i in favorites)
  		if (favorites[i] == "Coke")
         		document.writeln("Soft Drink");
            	else
         		document.writeln(favorites[i]);
	</body>
</html>

 

연습문제 2의 결과