๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ“ ๋ฐฐ์šฐ๊ณ  ์ตํžˆ๊ธฐ +/Web

(71)[Web]7์ผ์ฐจ: ((Javascript))F_WebApp03>Test031~036

by ์ข…์ด๋นจ๋Œ€ 2023. 12. 5.
TOP

๋ชฉ์ฐจ

    1. 2023.12.5(ํ™”)

    F_WebApp03

    ใ„ด C:\WebStudy\WebApp03\WebContent

    ใ„ดใ„ดTest031_1.html_์„ ํƒ๋ชฉ๋ก(select) ๋‹ค๋ฃจ๊ธฐ/ formclear(), .reset(), .forms[0].reset(), .focus()

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Test031_1.html</title>
    <link rel="stylesheet" href="css/style.css">
    
    <script type="text/javascript">
    
    	// select ๋ฅผ ๋‹ค๋ฃจ์–ด๋ณด๊ธฐ ์œ„ํ•œ ํ…Œ์ŠคํŠธ ํ•จ์ˆ˜ ์ •์˜
    	function selectTest()
    	{
    		// ํ™•์ธ
    		//alert("ํ•จ์ˆ˜ ํ˜ธ์ถœ~!!!");
    		
    		
    		// **์ปจํŠธ๋กค ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์—ฌ๋Ÿฌ๊ฐ€์ง€๋กœ ์•Œ์•„๋‘ฌ์•ผํ•จ**
    		
    		// ์ฒซ ๋ฒˆ์งธ ๋ฐฉ๋ฒ• ========================================================
    		/* 
    		var positionStr = document.getElementById("userPosition").value;
    		
    		// ํ™•์ธ
    		alert(positionStr);
    		*/
    		
    		// ๋‘ ๋ฒˆ์งธ ๋ฐฉ๋ฒ• ========================================================
    		/* 
    		var positionObj = document.getElementById("userPosition");
    		var positionOptions = positionObj.options;		//**๋ฐฐ์—ด~!!!**
    		var positionMsg = "";
    		
    		// ํ™•์ธ
    		//alert(positionOptions);
    		//--==>> [object HTMLOptionsCollection] -> ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋ฐฐ์—ด
    		
    		//alert(positionOptions.length);
    		//--==>> 4
    		
    		for (var i = 0; i < positionOptions.length; i++)		// 0 1 2 3
    		{
    			// ํ™•์ธ
    			//alert(positionOptions[i].selected);
    			//--==>> ์„ ํƒ๋œ ์˜ต์…˜ ํ•ญ๋ชฉ์— ๋”ฐ๋ผ true/false ํ˜•ํƒœ๋กœ ํ™•์ธ
    			//		ture false false false (๋ถ€์žฅ ์„ ํƒ๋œ ์ƒํƒœ)
    			//		false false false true (์‚ฌ์› ์„ ํƒ๋œ ์ƒํƒœ)
    			
    			if(positionOptions[i].selected)
    			{
    				// ํ™•์ธ
    				//alert(i);
    				//--==>> 0 (๋ถ€์žฅ ์„ ํƒ๋œ ์ƒํƒœ)
    				//		 3 (์‚ฌ์› ์„ ํƒ๋œ ์ƒํƒœ)
    				
    				// ๋‹จ์ผ ์„ ํƒ
    				//positionMsg = positionOptions[i].value;
    				//break;
    				
    				// ๋‹ค์ค‘ ์„ ํƒ
    				positionMsg = positionOptions[i].value + " ";
    				// **๋‹ค์ค‘ ์„ ํƒ์—์„œ๋Š” break ์“ฐ๋ฉด X**
    			}
    		}
    		
    		// ํ™•์ธ
    		alert(positionMsg); 
    		*/
    		
    		// ์„ธ ๋ฒˆ์งธ ๋ฐฉ๋ฒ• =====================================================
    		/* 
    		var positionObj = document.getElementById("userPosition");
    		
    		// ํ™•์ธ
    		//alert(positionObj.selectedIndex);
    		//--==>> ๋ถ€์žฅ->0, ๊ณผ์žฅ->1, ๋Œ€๋ฆฌ->2, ์‚ฌ์›->3
    		
    		// ํ™•์ธ
    		//alert(positionObj.options[2].value);
    		//--==>> cde(๋Œ€๋ฆฌ)
    		//alert(positionObj.options[0].value);
    		//--==>> zaq(๋ถ€์žฅ)
    		
    		positionMsg = positionObj.options[positionObj.selectedIndex].value;
    		//			  ------------------- ๋ฐฐ์—ด
    		//								 -------------------------- ์„ ํƒ๋œ ์ธ๋ฑ์Šค ๋ฒˆํ˜ธ
    		//															------ ๋ฐฐ์—ด์˜ ๊ฐ’
    		
    		// ํ™•์ธ
    		alert(positionMsg);
    		 */
    		
    	}
    function addMember()
    {
    	var uName = document.getElementById("userName").value;
    	var uSsn = document.getElementById("userSsn").value;
    	
    	//var uCity = document.getElementById("userCity").value
    	var cityObj = document.getElementById("userCity");
    	
    	//alert(cityObj.selectedIndex);
    	//--==>> ์„œ์šธ -> 0, ๋Œ€์ „ -> 1, ๋Œ€๊ตฌ -> 3
    	
    	//alert(cityObj.options[cityObj.selectedIndex].value);
    	//--==>> 1123(์„œ์šธ), 3328(๋Œ€์ „), 4239(๊ด‘์ฃผ), 5832(๋Œ€๊ตฌ)
    	
    	
    	
    	var uCity = cityObj.options[cityObj.selectedIndex].value;
    	
    	var BuseoObj = document.getElementById("userDepartment");
    	var uBuseo = BuseoObj.options[BuseoObj.selectedIndex].value;
    	
    	var positionObj = document.getElementById("userPosition");
    	var uPosition = positionObj.options[positionObj.selectedIndex].value;
    	
    	var uBasicPay = document.getElementById("userBasicPay").value;
    	
    	// ํ…Œ์ด๋ธ” ๊ทธ๋ฆฌ๊ธฐ ---------------------------------------------------
    	
    	var tableNode = document.getElementById("memberList");
    	
    	var trNode = document.createElement("tr");
    	
    	trNode.appendChild(createTdNode(uName));
    	trNode.appendChild(createTdNode(uSsn));
    	trNode.appendChild(createTdNode(uCity));
    	trNode.appendChild(createTdNode(uBuseo));
    	trNode.appendChild(createTdNode(uPosition));
    	trNode.appendChild(createTdNode(uBasicPay));
    	
    	tableNode.appendChild(trNode)	
    	// ---------------------------------------------------- ํ…Œ์ด๋ธ” ๊ทธ๋ฆฌ๊ธฐ
    	
    	//formclear();									//check~!!!
    													//**๋ฐ์ดํ„ฐ ์ž…๋ ฅํ›„ ๋‚ด์šฉ ๋ฆฌ์…‹**
    	
    	//document.getElementById("listForm").reset();	//check~!!!
    	document.forms[0].reset();						//check~!!!
    	
    	document.getElementById("userName").focus();		//check~!!!
    	
    }
    function createTdNode(val)
    {
    	var txtNode = document.createTextNode(val);
    	var tdNode = document.createElement("td");
    	tdNode.appendChild(txtNode);
    	
    	return tdNode;
    }
    function formclear()
    {
    	document.getElementById("userName").value = "";
    	document.getElementById("userSsn").value = "";
    	var cityObj = document.getElementById("userCity");
    	cityObj.options[0].selected = true;
    	
    	var buseoObj = document.getElementById("userDepartment");
    	buseoObj.options[3].selected = true;
    	
    	var jikwiObj = document.getElementById("userPosition");
    	document.getElementById("userBasicPay").value= "";
    }
    
    </script>
    
    
    </head>
    <body class="section">
    
    <div>
    	<h1>์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํ™œ์šฉ</h1>
    	<hr>
    </div>
    
    <div>
    	<h2>์„ ํƒ๋ชฉ๋ก(select) ๋‹ค๋ฃจ๊ธฐ</h2>
    	
    	
    	<form id="listForm">
    		<table>
    			<tr>	
    				<td>์ด๋ฆ„</td>
    				<td>
    					<input type="text" id="userName">
    				</td>
    			</tr>
    			<tr>
    				<td>์ฃผ๋ฏผ๋ฒˆํ˜ธ</td>
    				<td>
    					<input type="text" id="userSsn">
    				</td>
    			</tr>
    			<tr>
    			
    			<!-- "์„œ์šธ" "๋งˆํฌ๊ตฌ"... ์ด๋Ÿฐ์‹์œผ๋กœ ์‚ฌ์šฉ์ž ์ž…๋ ฅ์œผ๋กœ ๋ฐ›์œผ๋ฉด ์ฒ˜๋ฆฌ๊ฐ€ ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค. -->
    			<!-- ์„ ํƒ์ง€์—์„œ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋„๋ก ๋ณ€๊ฒฝํ•ด์•ผ ํ•œ๋‹ค! ใ€text → select[๋“œ๋กญ๋‹ค์šด]ใ€‘ -->
    			
    				<td>์ง€์—ญ</td>
    				<td>
    					<!-- <input type="text" id="userCity"> -->
    					<select id="userCity">
    						<option value="1123(์„œ์šธ)">์„œ์šธ</option>
    						<option value="3328(๋Œ€์ „)">๋Œ€์ „</option>
    						<option value="4239(๊ด‘์ฃผ)">๊ด‘์ฃผ</option>
    						<option value="5832(๋Œ€๊ตฌ)">๋Œ€๊ตฌ</option>
    					</select>
    				</td>
    			</tr>
    			<tr>
    				<td>๋ถ€์„œ</td>
    				<td>
    					<!-- <input type="text" id="userDepartment"> -->
    					<select id="userDepartment">
    						<option value="9987(๊ฐœ๋ฐœ๋ถ€)">๊ฐœ๋ฐœ๋ถ€</option>
    						<option value="9986(์ธ์‚ฌ๋ถ€)">์ธ์‚ฌ๋ถ€</option>
    						<option value="9985(์ž์žฌ๋ถ€)">์ž์žฌ๋ถ€</option>
    						<option value="9984(์˜์—…๋ถ€)" selected>์˜์—…๋ถ€</option>
    						<option value="9983(์ด๋ฌด๋ถ€)">์ด๋ฌด๋ถ€</option>
    					</select>
    				</td>
    			</tr>
    			<tr>
    				<td>์ง์œ„</td>
    				<td>
    					<!-- <input type="text" id="userPosition"> -->
    					<select id="userPosition">
    						<option value="zaq(๋ถ€์žฅ)">๋ถ€์žฅ</option>
    						<option value="xsw(๊ณผ์žฅ)">๊ณผ์žฅ</option>
    						<option value="cde(๋Œ€๋ฆฌ)">๋Œ€๋ฆฌ</option>
    						<option value="bgt(์‚ฌ์›)" selected>์‚ฌ์›</option>
    					</select>
    				</td>
    			</tr>
    			<tr>
    				<td>๊ธฐ๋ณธ๊ธ‰</td>
    				<td>
    					<input type="text" id="userBasicPay">
    				</td>
    			</tr>
    			<tr class="btn_box">
    				<td colspan="2" style="text-align: center">
    					
    					<!-- ์„ ํƒ๋œ ๊ฐ’์„ ๊ฐ€์ ธ์˜ค๋Š” 1,2,3 ๋ฐฉ๋ฒ• -->
    					<!-- <input type="button" value="์ง์› ์ถ”๊ฐ€" class="btn" style="width: 48%"
    					onclick="selectTest()"> -->
    					
    					<!-- ์ง์› ์ถ”๊ฐ€ ๊ธฐ๋Šฅ  -->
    					<input type="button" value="์ง์› ์ถ”๊ฐ€" class="btn"
    					onclick="addMember()">
    					
    					<input type="reset" value="์ž…๋ ฅ ์ทจ์†Œ" class="btn">
    				</td>
    			</tr>
    		</table>
    		<br>
    		
    		
    		<table id="memberList">
    			<tr>
    				<td>์ด๋ฆ„</td>
    				<td>์ฃผ๋ฏผ๋ฒˆํ˜ธ</td>
    				<td>์ง€์—ญ</td>
    				<td>๋ถ€์„œ</td>
    				<td>์ง์œ„</td>
    				<td>๊ธฐ๋ณธ๊ธ‰</td>
    			</tr>
    		</table>
    		
    	</form>
    </div>
    
    
    </body>
    </html>

    ใ„ดใ„ดTest031.html_์„ ํƒ๋ชฉ๋ก(select) ๋‹ค๋ฃจ๊ธฐ(๋‚ด๊ฐ€ ํ‘ผ ํ’€์ด)

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Test031.html</title>
    <link rel="stylesheet" href="css/style.css">
    
    <script type="text/javascript">
    
    	// select ๋ฅผ ๋‹ค๋ฃจ์–ด๋ณด๊ธฐ ์œ„ํ•œ ํ…Œ์ŠคํŠธ ํ•จ์ˆ˜ ์ •์˜
    	function selectTest()
    	{
    		// ํ™•์ธ
    		//alert("ํ•จ์ˆ˜ ํ˜ธ์ถœ~!!!");
    		
    		
    		// **์ปจํŠธ๋กค ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์—ฌ๋Ÿฌ๊ฐ€์ง€๋กœ ์•Œ์•„๋‘ฌ์•ผํ•จ**
    		
    		// ์ฒซ ๋ฒˆ์งธ ๋ฐฉ๋ฒ• ========================================================
    		/* 
    		var positionStr = document.getElementById("userPosition").value;
    		
    		// ํ™•์ธ
    		alert(positionStr);
    		*/
    		
    		// ๋‘ ๋ฒˆ์งธ ๋ฐฉ๋ฒ• ========================================================
    		/* 
    		var positionObj = document.getElementById("userPosition");
    		var positionOptions = positionObj.options;		//**๋ฐฐ์—ด~!!!**
    		var positionMsg = "";
    		
    		// ํ™•์ธ
    		//alert(positionOptions);
    		//--==>> [object HTMLOptionsCollection] -> ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋ฐฐ์—ด
    		
    		//alert(positionOptions.length);
    		//--==>> 4
    		
    		for (var i = 0; i < positionOptions.length; i++)		// 0 1 2 3
    		{
    			// ํ™•์ธ
    			//alert(positionOptions[i].selected);
    			//--==>> ์„ ํƒ๋œ ์˜ต์…˜ ํ•ญ๋ชฉ์— ๋”ฐ๋ผ true/false ํ˜•ํƒœ๋กœ ํ™•์ธ
    			//		ture false false false (๋ถ€์žฅ ์„ ํƒ๋œ ์ƒํƒœ)
    			//		false false false true (์‚ฌ์› ์„ ํƒ๋œ ์ƒํƒœ)
    			
    			if(positionOptions[i].selected)
    			{
    				// ํ™•์ธ
    				//alert(i);
    				//--==>> 0 (๋ถ€์žฅ ์„ ํƒ๋œ ์ƒํƒœ)
    				//		 3 (์‚ฌ์› ์„ ํƒ๋œ ์ƒํƒœ)
    				
    				// ๋‹จ์ผ ์„ ํƒ
    				//positionMsg = positionOptions[i].value;
    				//break;
    				
    				// ๋‹ค์ค‘ ์„ ํƒ
    				positionMsg = positionOptions[i].value + " ";
    				// **๋‹ค์ค‘ ์„ ํƒ์—์„œ๋Š” break ์“ฐ๋ฉด X**
    			}
    		}
    		
    		// ํ™•์ธ
    		alert(positionMsg); 
    		*/
    		
    		// ์„ธ ๋ฒˆ์งธ ๋ฐฉ๋ฒ• =====================================================
    		/* 
    		var positionObj = document.getElementById("userPosition");
    		
    		// ํ™•์ธ
    		//alert(positionObj.selectedIndex);
    		//--==>> ๋ถ€์žฅ->0, ๊ณผ์žฅ->1, ๋Œ€๋ฆฌ->2, ์‚ฌ์›->3
    		
    		// ํ™•์ธ
    		//alert(positionObj.options[2].value);
    		//--==>> cde(๋Œ€๋ฆฌ)
    		//alert(positionObj.options[0].value);
    		//--==>> zaq(๋ถ€์žฅ)
    		
    		positionMsg = positionObj.options[positionObj.selectedIndex].value;
    		//			  ------------------- ๋ฐฐ์—ด
    		//								 -------------------------- ์„ ํƒ๋œ ์ธ๋ฑ์Šค ๋ฒˆํ˜ธ
    		//															------ ๋ฐฐ์—ด์˜ ๊ฐ’
    		
    		// ํ™•์ธ
    		alert(positionMsg);
    		 */
    		
    	}
    function addMember()
    {
    	//console.log("ํ™•์ธ");
    	
    	var memBodyNode = document.getElementById("memberList");
    	var trNode = document.createElement("tr");
    	
    	var userName = document.getElementById("userName");
    	var userSsn = document.getElementById("userSsn");
    	
    	var userCity = document.getElementById("userCity");
    	var userDepartment = document.getElementById("userDepartment");
    	var userPosition = document.getElementById("userPosition");
    	
    	var userBasicPay = document.getElementById("userBasicPay");
    	
    	
    	var arr = new Array();
    	
    	arr[0] = userName.value;
    	arr[1] = userSsn.value;
    	
    	// S: ๋ฐฉ๋ฒ• 1 ----------------------------------------------	
    	/* arr[2] = userCity.value;
    	arr[3] = userDepartment.value;
    	arr[4] = userPosition.value; */
    	// E: ๋ฐฉ๋ฒ• 1 ----------------------------------------------	
    	
    	// S: ๋ฐฉ๋ฒ• 2 ----------------------------------------------	
    	/* var userCityOptions = userCity.options;
    	for (var i = 0; i < userCityOptions.length; i++)
    	{
    		if(userCityOptions[i].selected)
    		{
    			arr[2] = userCityOptions[i].value;
    		}
    	}
    	
    	var userDepartmentOptions = userDepartment.options;
    	for (var i = 0; i < userDepartmentOptions.length; i++)
    	{
    		if(userDepartmentOptions[i].selected)
    		{
    			arr[3] = userDepartmentOptions[i].value;
    		}
    	}
    	
    	var userPositionOptions = userPosition.options;
    	for (var i = 0; i < userPositionOptions.length; i++)
    	{
    		if(userPositionOptions[i].selected)
    		{
    			arr[4] = userPositionOptions[i].value;
    		}
    	} */
    	// E: ๋ฐฉ๋ฒ• 2 ----------------------------------------------	
    	
    	// S: ๋ฐฉ๋ฒ• 2 ----------------------------------------------	
    	arr[2] = userCity.options[userCity.selectedIndex].value;
    	arr[3] = userDepartment.options[userDepartment.selectedIndex].value;
    	arr[4] = userPosition.options[userPosition.selectedIndex].value;
    	
    	
    	// E: ๋ฐฉ๋ฒ• 2 ----------------------------------------------	
    	
    	arr[5] = userBasicPay.value;
    	
    	
    	
    	for (var i = 0; i < arr.length; i++)
    	{
    		trNode.appendChild(createTdNode(arr[i]));
    	}
    	
    	memBodyNode.appendChild(trNode);
    	
    	
    }
    function createTdNode(val)
    {
    	var txtNode = document.createTextNode(val);
    	var tdNode = document.createElement("td");
    	tdNode.appendChild(txtNode);
    	
    	return tdNode;
    }
    
    </script>
    
    
    </head>
    <body class="section">
    
    <div>
    	<h1>์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํ™œ์šฉ</h1>
    	<hr>
    </div>
    
    <div>
    	<h2>์„ ํƒ๋ชฉ๋ก(select) ๋‹ค๋ฃจ๊ธฐ</h2>
    	
    	
    	<form>
    		<table>
    			<tr>	
    				<td>์ด๋ฆ„</td>
    				<td>
    					<input type="text" id="userName">
    				</td>
    			</tr>
    			<tr>
    				<td>์ฃผ๋ฏผ๋ฒˆํ˜ธ</td>
    				<td>
    					<input type="text" id="userSsn">
    				</td>
    			</tr>
    			<tr>
    			
    			<!-- "์„œ์šธ" "๋งˆํฌ๊ตฌ"... ์ด๋Ÿฐ์‹์œผ๋กœ ์‚ฌ์šฉ์ž ์ž…๋ ฅ์œผ๋กœ ๋ฐ›์œผ๋ฉด ์ฒ˜๋ฆฌ๊ฐ€ ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค. -->
    			<!-- ์„ ํƒ์ง€์—์„œ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋„๋ก ๋ณ€๊ฒฝํ•ด์•ผ ํ•œ๋‹ค! ใ€text → select[๋“œ๋กญ๋‹ค์šด]ใ€‘ -->
    			
    				<td>์ง€์—ญ</td>
    				<td>
    					<!-- <input type="text" id="userCity"> -->
    					<select id="userCity">
    						<option value="1123(์„œ์šธ)">์„œ์šธ</option>
    						<option value="3328(๋Œ€์ „)">๋Œ€์ „</option>
    						<option value="4239(๊ด‘์ฃผ)">๊ด‘์ฃผ</option>
    						<option value="5832(๋Œ€๊ตฌ)">๋Œ€๊ตฌ</option>
    					</select>
    				</td>
    			</tr>
    			<tr>
    				<td>๋ถ€์„œ</td>
    				<td>
    					<!-- <input type="text" id="userDepartment"> -->
    					<select id="userDepartment">
    						<option value="9987(๊ฐœ๋ฐœ๋ถ€)">๊ฐœ๋ฐœ๋ถ€</option>
    						<option value="9986(์ธ์‚ฌ๋ถ€)">์ธ์‚ฌ๋ถ€</option>
    						<option value="9985(์ž์žฌ๋ถ€)">์ž์žฌ๋ถ€</option>
    						<option value="9984(์˜์—…๋ถ€)">์˜์—…๋ถ€</option>
    						<option value="9983(์ด๋ฌด๋ถ€)">์ด๋ฌด๋ถ€</option>
    					</select>
    				</td>
    			</tr>
    			<tr>
    				<td>์ง์œ„</td>
    				<td>
    					<!-- <input type="text" id="userPosition"> -->
    					<select id="userPosition">
    						<option value="zaq(๋ถ€์žฅ)">๋ถ€์žฅ</option>
    						<option value="xsw(๊ณผ์žฅ)">๊ณผ์žฅ</option>
    						<option value="cde(๋Œ€๋ฆฌ)">๋Œ€๋ฆฌ</option>
    						<option value="bgt(์‚ฌ์›)">์‚ฌ์›</option>
    					</select>
    				</td>
    			</tr>
    			<tr>
    				<td>๊ธฐ๋ณธ๊ธ‰</td>
    				<td>
    					<input type="text" id="userBasicPay">
    				</td>
    			</tr>
    			<tr class="btn_box">
    				<td colspan="2" style="text-align: center">
    					
    					<!-- ์„ ํƒ๋œ ๊ฐ’์„ ๊ฐ€์ ธ์˜ค๋Š” 1,2,3 ๋ฐฉ๋ฒ• -->
    					<!-- <input type="button" value="์ง์› ์ถ”๊ฐ€" class="btn" style="width: 48%"
    					onclick="selectTest()"> -->
    					
    					<!-- ์ง์› ์ถ”๊ฐ€ ๊ธฐ๋Šฅ  -->
    					<input type="button" value="์ง์› ์ถ”๊ฐ€" class="btn"
    					onclick="addMember()">
    					
    					<input type="reset" value="์ž…๋ ฅ ์ทจ์†Œ" class="btn">
    				</td>
    			</tr>
    		</table>
    		<br>
    		
    		
    		<table id="memberList">
    			<tr>
    				<td>์ด๋ฆ„</td>
    				<td>์ฃผ๋ฏผ๋ฒˆํ˜ธ</td>
    				<td>์ง€์—ญ</td>
    				<td>๋ถ€์„œ</td>
    				<td>์ง์œ„</td>
    				<td>๊ธฐ๋ณธ๊ธ‰</td>
    			</tr>
    		</table>
    		
    	</form>
    </div>
    
    
    </body>
    </html>

    ใ„ดใ„ดTest032.html_์ฃผ์†Œ๊ฒ€์ƒ‰/ window.open()

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Test032.html</title>
    <link rel="stylesheet" href="css/style.css">
    
    <script type="text/javascript">
    function searchAddr()
    {
    	//console.log("ํ•จ์ˆ˜ํ˜ธ์ถœ");
    	
    	// โ€ป window.open();
    	
    	//	- ํ˜•์‹ ๋ฐ ๊ตฌ์กฐ
    	//		var result = window.open(url,name,spec,replace);
    	//
    	//	  ·result
    	//		์ƒˆ๋กœ ์ƒ์„ฑ๋œ ์ฐฝ์˜ ๊ฐ์ฒด๊ฐ€ ๋ฐ˜ํ™˜๋œ๋‹ค.
    	//		์ฐฝ ๊ฐ์ฒด ์ƒ์„ฑ์ด ์ •์ƒ์ ์œผ๋กœ ์ด๋ฃฝ์ง€์ง€ ์•Š์„ ๊ฒฝ์šฐ null์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
    	//	  ·url
    	//		์ƒˆ ์ฐฝ์œผ๋กœ ์š”์ฒญํ•  ์ฃผ์†Œ.
    	//	  ·name
    	//		์ƒˆ ์ฐฝ์˜ ์†์„ฑ ๋˜๋Š” ์ด๋ฆ„.
    	//		(_blank / _parent / _self / _top / ์ž„์˜์˜ ์ด๋ฆ„)
    	//	  ·spec
    	//		์ƒˆ ์ฐฝ์˜ ์ŠคํŽ™ ์„ค์ •.
    	//	  ·replace
    	//	  	ํžˆ์Šคํ† ๋ฆฌ ๋ชฉ๋ก์— ์ƒˆ์ฐฝ์„ ๋งŒ๋“ค์ง€์˜ ์—ฌ๋ถ€ ์ง€์ •.
    	
    	window.open("Test033.html","Test","width=500, height=300");
    	//----๋‚ด์žฅ ๊ฐ์ฒด(DOM ๊ฐ์ฒด)
    	//**DOM์€ BOM ๊ฐ์ฒด ์œ„์— ์ƒ์„ฑ๋จ**
    	//			------------- ์—ด ํŽ˜์ด์ง€
    	//						   ------ ์—ด๋ ธ์„ ๋•Œ ์ด๋ฆ„
    	//								  ----------------------- ์ŠคํŽ™(์œ„์น˜, ํฌ๊ธฐ ๋“ฑ..)
    	
    	
    }
    </script>
    
    </head>
    <body class="section">
    <div>
    	<h1>์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ํ™œ์šฉ</h1>
    	<hr>
    </div>
    
    <div class="layout">
    	<h2>์ฃผ์†Œ ๊ฒ€์ƒ‰</h2>
    	
    	<form>
    		<div class="input_box btn_box">
    			<span class="tit">๊ธฐ๋ณธ ์ฃผ์†Œ</span>
    			<input type="text" id="addr1" readonly="readonly" class="txt">
    			<input type="button" value="๊ฒ€์ƒ‰" class="btn" onclick="searchAddr()">
    		</div>
    		<div>
    			<span class="tit">์ƒ์„ธ ์ฃผ์†Œ</span>
    			<input type="text" id="addr2" class="txt">
    		</div>
    		<div>
    			<span id="txt1" style="color: red; font-weight: bold">
    				์‹œ๊ฐ์ ์œผ๋กœ ํ™•์ธ ํ•  ์ˆ˜ ์žˆ๊ฒŒ ์ฒ˜๋ฆฌ
    			</span>
    		</div>
    	</form>
    </div>
    </body>
    </html>

    ใ„ดใ„ดTest033.html_์ฃผ์†Œ ๊ฒ€์ƒ‰(์ƒˆ์ฐฝ) / .innerHTML

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Test033.html</title>
    <link rel="stylesheet" href="css/style.css">
    
    <script type="text/javascript">
    function myAddr(addr)
    {
    	// ํ™•์ธ
    	//alert("ํ•จ์ˆ˜ํ˜ธ์ถœ");
    	
    	// ํ™•์ธ
    	//alert(addr);
    	
    	// ์‹คํ–‰๋˜์ง€ ์•Š์Œ
    	//document.getElementById("addr").value = "1234";
    	
    	//window.opener.document.getElementById("addr1").value = "1234";
    	//---- Test033
    	//       ----- Test032
    	
    	window.opener.document.getElementById("addr1").value = addr;
    	
    	//IE ์šฉ
    	//window.opener.document.getElementById("txt1").innerText = addr;
    	
    	//CR, FF ์šฉ
    	window.opener.document.getElementById("txt1").innerHTML = addr;
    	
    	// ํ˜„์žฌ ์ฐฝ ๋‹ซ๊ธฐ
    	window.close();
    }
    </script>
    </head>
    <body class="section">
    	
    <div class="layout" style="padding: 20px 0;">
    	<form>
    		<div class="input_box btn_box">
    			<span class="tit">์ฃผ์†Œ ๊ฒ€์ƒ‰(์ƒˆ์ฐฝ)</span>
    			<input type="text">
    			<input type="button" value="๊ฒ€์ƒ‰">
    		</div>
    		<div>
    			<ul>
    				<!-- **๋ฐ”๋žŒ์งํ•˜์ง€ ์•Š์€ ๋ฐฉ๋ฒ•** -->
    				<!-- <li><a href="Test032.html">์„œ์šธ ๋งˆํฌ๊ตฌ ์›”๋“œ์ปต๋ถ๋กœ 1๊ฐ€ (1~110๋ฒˆ์ง€)</a></li> -->
    				
    				<!-- **ํ•จ์ˆ˜ํ˜ธ์ถœ: ๊ทธ๋ƒฅ ํ•จ์ˆ˜๋ช…์„ ๋„ฃ์–ด์„œ๋Š” ์‹คํ–‰X** -->
    				<!-- <li><a href="myAddr()">์„œ์šธ ๋งˆํฌ๊ตฌ ์›”๋“œ์ปต๋ถ๋กœ 1๊ฐ€ (1~110๋ฒˆ์ง€)</a></li> -->
    				<li><a href="javascript:myAddr('04044 ์„œ์šธ ๋งˆํฌ๊ตฌ ์›”๋“œ์ปต๋ถ๋กœ1๊ฐ€')">์„œ์šธ ๋งˆํฌ๊ตฌ ์›”๋“œ์ปต๋ถ๋กœ 1๊ฐ€ (1~110๋ฒˆ์ง€)</a></li>
    				<li><a href="javascript:myAddr('04045 ์„œ์šธ ๋งˆํฌ๊ตฌ ์›”๋“œ์ปต๋ถ๋กœ2๊ฐ€')">์„œ์šธ ๋งˆํฌ๊ตฌ ์›”๋“œ์ปต๋ถ๋กœ 2๊ฐ€ (111~132๋ฒˆ์ง€)</a></li>
    				<li><a href="javascript:myAddr('04046 ์„œ์šธ ๋งˆํฌ๊ตฌ ์›”๋“œ์ปต๋ถ๋กœ3๊ฐ€')">์„œ์šธ ๋งˆํฌ๊ตฌ ์›”๋“œ์ปต๋ถ๋กœ 3๊ฐ€ (133~145๋ฒˆ์ง€)</a></li>
    				<li><a href="javascript:myAddr('04047 ์„œ์šธ ๋งˆํฌ๊ตฌ ์›”๋“œ์ปต๋ถ๋กœ4๊ฐ€')">์„œ์šธ ๋งˆํฌ๊ตฌ ์›”๋“œ์ปต๋ถ๋กœ 4๊ฐ€ (146~153๋ฒˆ์ง€)</a></li>
    				<li><a href="javascript:myAddr('04048 ์„œ์šธ ๋งˆํฌ๊ตฌ ์›”๋“œ์ปต๋ถ๋กœ5๊ฐ€')">์„œ์šธ ๋งˆํฌ๊ตฌ ์›”๋“œ์ปต๋ถ๋กœ 5๊ฐ€ (152~166๋ฒˆ์ง€)</a></li>
    				<li><a href="javascript:myAddr('04049 ์„œ์šธ ๋งˆํฌ๊ตฌ ์›”๋“œ์ปต๋ถ๋กœ6๊ฐ€')">์„œ์šธ ๋งˆํฌ๊ตฌ ์›”๋“œ์ปต๋ถ๋กœ 6๊ฐ€ (167~180๋ฒˆ์ง€)</a></li>
    				<!-- ๋ฌธ์ž์—ด ์‚ฌ์šฉ์‹œ ํฐ๋”ฐ์˜ดํ‘œ(") ์ž‘์€๋”ฐ์˜ดํ‘œ(')๋ชจ๋‘ ์‚ฌ์šฉ๊ฐ€๋Šฅ. ๋‹จ, ๋ฌถ์–ด์„œ ๊ตฌ๋ถ„์ง€์–ด ์‚ฌ์šฉํ•ด์•ผํ•จ -->
    				
    				<li><a href="">์„œ์šธ ๋งˆํฌ๊ตฌ ์›”๋“œ์ปต๋ถ๋กœ 1๊ฐ€ (1~110๋ฒˆ์ง€)</a></li>
    				<li><a href="">์„œ์šธ ๋งˆํฌ๊ตฌ ์›”๋“œ์ปต๋ถ๋กœ 2๊ฐ€ (111~132๋ฒˆ์ง€)</a></li>
    			</ul>
    		</div>
    		
    	</form>
    </div>	
    	
    </body>
    </html>

    ใ„ดใ„ดTest034.html_๋ฉ”๋‰ด ๋ณด์ด๊ธฐ/๊ฐ์ถ”๊ธฐ / onmouseover, onmouseout

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Test034.html</title>
    <link rel="stylesheet" href="css/style.css">
    <style type="text/css">
    	#menuTable {display: none;}
    </style>
    
    <script type="text/javascript" src="js/myMenu.js"></script>
    
    </head>
    <body class="section">
    
    <div>
    	<h1>์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํ™œ์šฉ</h1>
    	<hr>
    </div>	
    
    <div class="layout">
    	<h2>๋ฉ”๋‰ด ๋ณด์ด๊ธฐ/๊ฐ์ถ”๊ธฐ</h2>
    	
    	<div class="btn_box">
    		<form>
    			<!-- ํด๋ฆญ ์‹œ ๋ฉ”๋‰ด ํ…Œ์ด๋ธ” ๋ณด์ด๊ธฐ -->
    			<!-- <input type="button" value="๋ฉ”๋‰ด ๋ณด์ด๊ธฐ" onclick="myMenu1()"> -->
    			<input type="button" value="๋ฉ”๋‰ด ๋ณด์ด๊ธฐ" onclick="myMenu(1)">
    			
    			<!-- ํด๋ฆญ ์‹œ ๋ฉ”๋‰ด ํ…Œ์ด๋ธ” ๊ฐ์ถ”๊ธฐ -->
    			<!-- <input type="button" value="๋ฉ”๋‰ด ๊ฐ์ถ”๊ธฐ" onclick="myMenu2()"> -->
    			<input type="button" value="๋ฉ”๋‰ด ๊ฐ์ถ”๊ธฐ" onclick="myMenu(2)">
    			
    			<!-- 
    				๋ฒ„ํŠผ ์œ„์— ๋งˆ์šฐ์Šค ์ปค์„œ๋ฅผ ์˜ฌ๋ ค๋†“์œผ๋ฉด ๋ฉ”๋‰ด ํ…Œ์ด๋ธ”์ด ๋ณด์ด๊ณ 
    				๋‹ค์‹œ ๋ฒ„ํŠผ ์œ„์— ๋จธ๋ฌผ๋ฉด ๋งˆ์šฐ์Šค ์ปค์„œ๊ฐ€ ๋ฒ„ํŠผ ์˜์—ญ์„ ๋น ์ ธ๋‚˜๊ฐ€๋ฉด
    				๋ฉ”๋‰ด ํ…Œ์ด๋ธ” ๊ฐ์ถ”๊ธฐ
    			 -->
    			 <input type="button" value="๋ฉ”๋‰ด ๋ณด์ด๊ธฐ/๊ฐ์ถ”๊ธฐ" onmouseover="myMenu(1)" onmouseout="myMenu(2)">
    		</form>
    	</div>
    	
    	<div id="menuTable">
    		<table>
    			<tr>
    				<td>JAVA ๊ธฐ์ดˆ</td>
    			</tr>
    			<tr>
    				<td>์˜ค๋ผํด ์ค‘๊ธ‰</td>
    			</tr>
    			<tr>
    				<td>JSP ๊ณ ๊ธ‰</td>
    			</tr>
    			<tr>
    				<td>Servlet ํ™œ์šฉ</td>
    			</tr>
    		</table>
    	</div>
    </div>
    
    
    </body>
    </html>

    ใ„ดใ„ดjs/myMenu.js

    /**
     * myMenu.js
     */
    /*
    function myMenu1()
    {
    	
    }
    
    function myMenu2()
    {
    	
    }
    */
    
    function myMenu(status)
    {
    	//**์ž๋ฐ”์™€๋Š” ๋‹ค๋ฅด๊ฒŒ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ์—†์–ด๋„ ์‹คํ–‰๊ฐ€๋Šฅ**
    	// ํ™•์ธ
    	//alert("ํ•จ์ˆ˜ ํ˜ธ์ถœ~!!");
    	
    	//alert(status);
    	
    	var menu = document.getElementById("menuTable");
    	
    	if(status==1)
    	{
    		//alert("1๋ฒˆ ํ™•์ธ");
    		
    		// ์Šคํƒ€์ผ ์ œ์–ด
    		menu.style.display="block";
    	}
    	else
    	{
    		//alert("2๋ฒˆ ํ™•์ธ");
    		
    		// ์Šคํƒ€์ผ ์ œ์–ด
    		menu.style.display="none";
    	}
    }

     


     

    ใ„ดใ„ด (Test035.html) โ–  ์›น ๊ธฐ์ดˆ ๋‚ด์šฉ ์ •๋ฆฌ โ– 

     

    โ– โ– โ–  ์›น ๊ธฐ์ดˆ ๋‚ด์šฉ ์ •๋ฆฌ โ– โ– โ– 

    โ—‹ ์›น ํŽ˜์ด์ง€ ์ž‘์„ฑ

    - ๊ตฌ์กฐ์  ์„ค๊ณ„(HTML)

    ·์ปจํ…์ธ ์— ๋Œ€ํ•œ ๋ ˆ์ด์•„์›ƒ ๊ตฌ์„ฑ(๋ถ€๋ชจ ์ž์‹ ๊ด€๊ณ„ ์„ค์ •)

    ·... ํƒœ๊ทธ์— ๋Œ€ํ•œ ๊ณต๋ถ€(์ธ๋ผ์ธ/๋ธ”๋Ÿญ)

    http://www.w3schools.com/
    http://koxo.com/

    - ํ”„๋ฆฌ์  ํ…Œ์ด์…˜ ์ถ”๊ฐ€(CSS)

    ·์„ ํƒ์ž ๊ตฌ์„ฑ ๋ฐ ์„ค์ •

    1. ใ€Ž*ใ€ (๊ณต์šฉ ์„ ํƒ์ž)

    ๋ชจ๋“  ์—˜๋ฆฌ๋จผํŠธ๋ฅผ ์„ ํƒํ•œ๋‹ค.

    2. ใ€ŽEใ€ (์—˜๋ฆฌ๋จผํŠธ ์„ ํƒ์ž, ํƒœ๊ทธ ์„ ํƒ์ž, ํƒ€์ž… ์„ ํƒ์ž)

    ์—˜๋ฆฌ๋จผํŠธ๋ฅผ ์„ ํƒํ•œ๋‹ค.

    3. ใ€Ž.ใ€ (ํด๋ž˜์Šค ์„ ํƒ์ž)

    html ์—์„œ๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ... ์˜ˆ๋ฅผ ๋“ค์–ด ใ€Žtr.evenใ€์€ ใ€Ževenใ€์ด๋ผ๋Š” ํด๋ž˜์Šค๋ฅผ ๊ฐ–๊ณ  ์žˆ๋Š” tr ์—˜๋ฆฌ๋จผํŠธ๋ฅผ ์„ ํƒํ•˜๊ฒŒ ๋œ๋‹ค.

    class๋Š” ํ•˜๋‚˜์˜ ํŽ˜์ด์ง€์—์„œ ๋™์ผํ•œ class ๋ฅผ ์—ฌ๋Ÿฌ ๋ฒˆ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ฐ˜๋ณต์ ์œผ๋กœ ์—ฌ๋Ÿฌ ๋ฒˆ ๋‚˜์˜ค๋Š” ์Šคํƒ€์ผ์  ๊ฒฝ์šฐ ์šฉ์ดํ•˜๊ฒŒ ์ง€์ •ํ•˜์—ฌ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

    4. ใ€Ž#ใ€ (์•„์ด๋”” ์„ ํƒ์ž)
    ์˜ˆ๋ฅผ ๋“ค์–ด... ใ€Ž#userใ€๋ผ๋Š” ์„ ํƒ์ž๋Š” ์•„์ด๋””๊ฐ€ ใ€Žuserใ€์ธ ์—˜๋ฆฌ๋จผํŠธ๋ฅผ ์„ ํƒํ•˜๊ฒŒ ๋œ๋‹ค.

    5. ใ€ŽE Fใ€ (ํ•˜์œ„ ์„ ํƒ์ž, ์ž์† ์„ ํƒ์ž)
    E ์—˜๋ฆฌ๋จผํŠธ ํ•˜์œ„์— ์žˆ๋Š” F ์—˜๋ฆฌ๋จผํŠธ๋ฅผ ์„ ํƒํ•˜๊ฒŒ ๋œ๋‹ค.
    ์ด ๊ฒฝ์šฐ, F๋Š” E์˜ ๋ฐ”๋กœ ์ง์ ‘์ ์ธ ์ž์‹ ์—˜๋ฆฌ๋จผํŠธ๊ฐ€ ์•„๋‹ˆ์–ด๋„ ๋ฌด๋ฐฉํ•˜๋‹ค.

    6. ใ€ŽE>Fใ€ (์ž์‹ ์„ ํƒ์ž)
    E ์—˜๋ฆฌ๋จผํŠธ์˜ ์ž์‹ ์—˜๋ฆฌ๋จผํŠธ์ธ F ์—˜๋ฆฌ๋จผํŠธ๋ฅผ ์„ ํƒํ•˜๊ฒŒ ๋œ๋‹ค.

    7. ใ€ŽE+Fใ€ (์ธ์ ‘ ์„ ํƒ์ž)
    E ์—˜๋ฆฌ๋จผํŠธ์™€ F ์—˜๋ฆฌ๋จผํŠธ๊ฐ€ ์„œ๋กœ ๋™๋“ฑํ•œ ๊ด€๊ณ„์—์„œ ์ธ์ ‘ํ•ด ์žˆ๋Š” ๊ฒฝ์šฐ ์„ ํƒํ•˜๊ฒŒ ๋œ๋‹ค.

    8. ใ€ŽE:hoverใ€, ใ€ŽE:acitveใ€, ใ€ŽE:focusใ€... (๋™์  ์„ ํƒ์ž, ๊ฐ€์ƒ ์„ ํƒ์ž, ์ƒํƒœ ์„ ํƒ์ž)
    ์‚ฌ์šฉ์ž ์•ก์…˜์ด ์„ ํƒ์ž๋กœ ๊ตฌ์„ฑํ•œ ์ƒํƒœ์— ํ•ด๋‹นํ•˜๋Š” (๋งŒ์กฑํ•˜๋Š”) E ์—˜๋ฆฌ๋จผํŠธ๋ฅผ ์„ ํƒํ•˜๊ฒŒ ๋œ๋‹ค.

    ·CSS์˜ ์„ ์–ธ ๋ฐฉ๋ฒ•

    1. ์™ธ๋ถ€์„ ์–ธ

    <link rel="stylesheet" type="text/css" href="css/style.css">

    2. ๋ฌธ์„œ ์•ˆ์— ํฌํ•จํ•˜์—ฌ ์„ ์–ธ

    <style type="text/css">
    
    div {...}
    
    </style>

    3. ์—˜๋ฆฌ๋จผํŠธ(ํƒœ๊ทธ)์— ์ง์ ‘ ์„ ์–ธ

    <input type="text" style="width: 20px; height: 40px;">

     

    - ๋™์ž‘, ํ–‰๋™ ๋ฐ ๊ธฐ๋Šฅ ์ถ”๊ฐ€(Javascript)

    ·์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์˜ ํŠน์ง•

    1. ์ธํ„ฐํ”„๋ฆฌํŠธ ์–ธ์–ด

    ์ปคํŒŒ์ผ ๊ณผ์ •์ด ํ•„์š”์—†์ด ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์ฝ๊ณ ... ํ•ด์„ํ•˜๊ณ ... ์‹คํ–‰ํ•œ๋‹ค.(์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์—”์ง„)

    2. ๋™์  ๋ฐ์ดํ„ฐํƒ€์ž…

    ๋ชจ๋“  ๋ณ€์ˆ˜๋ฅผ ใ€Žvarใ€ ,ใ€Žletใ€, ใ€Žconstใ€๋“ฑ์œผ๋กœ ์„ ์–ธํ•˜๋ฉด ๋์ด๋‹ค.

    ๋ฐ์ดํ„ฐํƒ€์ž…์„ ๋ณ„๋„๋กœ ์ง€์ •ํ•  ํ•„์š”๊ฐ€ ์—†๋‹ค.

    3. ๊ฐ์ฒด ์ง€ํ–ฅ ์–ธ์–ด

    ๋‹จ, ์ž๋ฐ”์™€ ๋‹ค๋ฅธ ์ ์€ ํด๋ž˜์Šค ๊ฐœ๋…์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์œผ๋ฉฐ

    ์ƒ์„ฑ์ž ํ•จ์ˆ˜๋ฅผ ์ •์˜ํ•˜๋Š” ํ˜•ํƒœ๋กœ ๊ฐ์ฒด๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜๋ฉฐ, ํ”„๋กœํ† ํƒ€์ž…์„ ํ™œ์šฉํ•˜๊ฒŒ ๋œ๋‹ค.

     

    ·์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์ง์ ‘์ ์œผ๋กœ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” ์šฉ๋„

    1. ์ด๋ฒคํŠธ์— ๋ฐ˜์‘ํ•˜๋Š” ๋™์ž‘์˜ ๊ตฌํ˜„

    2. AJAX ๋ฅผ ํ†ตํ•ด ํŽ˜์ด์ง€ ๋กœ๋”ฉ ๊ณผ์ • ์—†์ด ์ปจํ…์ธ  ์—ฐ๋™์ด๋‚˜ ๋ฐ์ดํ„ฐ ์ œ์ถœ ๊ธฐ๋Šฅ

    3. HTML ์—˜๋ฆฌ๋จผํŠธ ๊ตฌ์กฐ / CSS ๋””์ž์ธ ๋“ฑ์„ ๋™์ ์œผ๋กœ ์ „ํ™˜

    4. ์‚ฌ์šฉ์ž ์ž…๋ ฅ ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ ์‚ฌ์ „ ๊ฒ€์ฆ(์„œ๋ฒ„๋กœ ์ „์†กํ•˜๊ธฐ ์ „์—...)

    ·์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ฐ์ฒด

    1. ๋‚ด์žฅ ๊ฐ์ฒด, ์‚ฌ์šฉ์ž ์ •์˜ ๊ฐ์ฒด

    โ€ป ๋‚ด์žฅ ๊ฐ์ฒด๋Š” ์ƒ์„ฑ์ž ํ•จ์ˆ˜๊ฐ€ ๋ฏธ๋ฆฌ ์ •์˜๋˜์–ด(์ž‘์„ฑ๋˜์–ด) ์žˆ์œผ๋ฉฐ,

    ์‚ฌ์šฉ์ž ์ •์˜ ๊ฐ์ฒด๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์ด ์ƒ์„ฑ์ž ํ•จ์ˆ˜๋ฅผ ์ง์ ‘ ์ •์˜ํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

    2. ์‚ฌ์šฉ์ž ์ •์˜ ๊ฐ์ฒด

    โ‘  ๊ฐ์ฒด์™€ ์—ฐ๊ด€๋œ ๋ฐ์ดํ„ฐ๋Š” ๊ฐ์ฒด๊ฐ€ ์ƒ์„ฑ๋  ๋•Œ ์ดˆ๊ธฐํ™” ๋˜์–ด์•ผ ํ•˜๋Š”๋ฐ... ์ƒ์„ฑ์ž๋ผ๊ณ  ๋ถ€๋ฅด๋Š” ํŠน๋ณ„ํ•œ ํ•จ์ˆ˜๊ฐ€ ๊ฐ์ฒด๋ฅผ ํ™œ์„ฑํ™” ์‹œํ‚ค๋Š”๋ฐ ํ•„์š”ํ•˜๋‹ค.

    var arr = new Array();

    โ‘ก ์ƒ์„ฑ์ž๋กœ ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์ž๋ฐ”์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ใ€Žnewใ€ ์—ฐ์‚ฐ์ž๋ฅผ ํ™œ์šฉํ•˜๊ฒŒ ๋œ๋‹ค.

    โ‘ข ์ƒ์„ฑ์ž(๊ฐ์ฒด)์˜ ์ด๋ฆ„์€ ์ฒซ ๊ธ€์ž๋ฅผ ๋Œ€๋ฌธ์ž๋กœ ํ‘œ๊ธฐํ•œ๋‹ค.

    โ‘ฃ ์ƒ์„ฑ์ž ๋‚ด๋ถ€์— ์†์„ฑ, ํ•จ์ˆ˜๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ(์ •์˜ํ•˜๊ธฐ) ์œ„ํ•ด ใ€Žthisใ€ ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

    โ‘ค๊ฐ๊ฐ์ฒด์˜ ๋ฉค๋ฒ„์ธ ์†์„ฑ๊ณผ ํ•จ์ˆ˜๋Š” ใ€Ž.(dot)ใ€ ์—ฐ์‚ฐ์ž๋กœ ์ ‘๊ทผํ•œ๋‹ค.

    โ‘ฅ์‚ฌ์šฉ์ž ์ •์˜ ๊ฐ์ฒด๋ฅผ ๋งŒ๋“œ๋Š” ๊ธฐ๋ณธ ํ˜•์‹ ๋ฐ ๊ตฌ์กฐ(์ƒ์„ฑ์ž๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๊ธฐ๋ณธ ํ˜•์‹ ๋ฐ ๊ตฌ์กฐ)

    function ์ƒ์„ฑ์ž๋ช…(์ธ์ž๋ฆฌ์ŠคํŠธ) -> ์ƒ์„ฑ์ž ๋ช…์˜ ์ฒซ ๊ธ€์ž...๋Œ€๋ฌธ์ž
    {
    // ์†์„ฑ ์ •์˜
    this.๋ฉค๋ฒ„๋ช… = ์ธ์ž;
    
    // ๋ฉ”์†Œ๋“œ(ํ•จ์ˆ˜) ์ •์˜
    this.๋ฉค๋ฒ„๋ฉฐ = function(์ธ์ž๋ฆฌ์ŠคํŠธ)
    {
    // ๋ฉ”์†Œ๋“œ(ํ•จ์ˆ˜) ๋‚ด๋ถ€ ์ฝ”๋“œ
    return ๋ฆฌํ„ด๊ฐ’;
    }
    }



    โ‘ฆํ”„๋กœํ† ํƒ€์ž…
    ํ•œ ๊ฐ์ฒด๊ฐ€ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ์—ฌ๋Ÿฌ ์†์„ฑ๊ณผ ๋ฉ”์†Œ๋“œ(ํ•จ์ˆ˜)๋ฅผ ๋‹ค๋ฅธ ๊ฐ์ฒด(ํ˜น์€ ์—ฌ๋Ÿฌ๊ฐœ ๋‹ค๋ฅธ ๊ฐ์ฒด)๊ฐ€ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•˜๋Š” ๊ฐœ๋…

    ex) funcion Car(x,y)
    {
    this.x = x;
    this.y = y;
    
    this.getDistance = function()
    {
    return (this.x * this.x + this.y + this.y);
    }
    }



    -> ์ด ์ฝ”๋“œ๊ฐ€ ์ž๋™์ฐจ(Car)๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ๊ฐ์ฒด๋ผ๊ณ  ๊ฐ€์ •ํ•œ๋‹ค.
    ์—ฌ๊ธฐ์„œ ใ€ŽgetDistance()ใ€ ๋Š” ์›๋ž˜ ์œ„์น˜๋ถ€ํ„ฐ ์ด๋™ ๊ฑฐ๋ฆฌ๋ฅผ ๊ณ„์‚ฐํ•˜๋Š” ํ•จ์ˆ˜๋ผ๊ณ  ๊ฐ€์ •ํ•œ๋‹ค.
    ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์ž๋™์ฐจ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ...

    var c1 = new Car(10,20);
    var c2 = new Car(10,50);
    :
    var c100 = new Car(10,42);



    ์ด์™€ ๊ฐ™์€ ๊ตฌ๋ฌธ์„ ํ™œ์šฉํ•˜์—ฌ ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ–ˆ๋‹ค๋ฉด... ๊ฐ์ฒด๋“ค๋งˆ๋‹ค ใ€ŽgetDistance()ใ€ ํ•จ์ˆ˜๋ฅผ ๊ฐ€์ง€๊ฒŒ ๋˜๋ฉด์„œ ๋‚ญ๋น„ํ•˜๊ฒŒ ๋œ๋‹ค.

    ์ด ๋•Œ... ๊ฐ์ฒด๋“ค๋งˆ๋‹ค ํ•จ์ˆ˜๋ฅผ ๊ฐ€์ง€๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ํ•˜๋‚˜์˜ ํ•จ์ˆ˜๋ฅผ ๋งŒ๋“ค์–ด ๊ณต์œ ํ•˜๊ธฐ ์œ„ํ•ด ํ”„๋กœํ† ํƒ€์ž…์„ ์ •์˜ํ•˜๊ฒŒ ๋œ๋‹ค.

    โ€ป ๋ชจ๋“  ๊ฐ์ฒด๋Š” ํ”„๋กœํ† ํƒ€์ž…์ด๋ผ๋А ์ˆจ๊ฒจ์ง„ ๊ฐ์ฒด๋ฅผ ํฌํ•จํ•˜๊ณ  ์žˆ๋‹ค.
    ใ€ŽCarใ€๊ฐ์ฒด์˜ ํ”„๋กœํ† ํƒ€์ž…์€ ใ€ŽCar.prototypeใ€์ด๋ผ๋Š” ์ˆจ๊ฒจ์ง„ ๊ฐ์ฒด๋ฅผ ๊ฐ–๊ณ  ์žˆ๋Š” ๊ฒƒ์ด๋‹ค.

    funcion Car(x,y)
    {
    this.x = x;
    this.y = y;
    }
    
    Car.prototype.getDistance = function()
    {
    return (this.x * this.x + this.y + this.y);
    }
    
    var c3 = new Car(10, 80);
    c3.getDistance();

    ใ„ดใ„ดTest036.html_์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ฐ์ฒด(์‚ฌ์šฉ์ž ์ •์˜ ๊ฐ์ฒด)

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Test036.html</title>
    <link rel="stylesheet" type="text/css" href="css/style.css">
    
    <script type="text/javascript">
    function objTest()
    {
    	// ํ™•์ธ
    	//alert("ํ•จ์ˆ˜ํ˜ธ์ถœ");
    	
    	// ์‚ฌ์šฉ์ž ์ •์˜ ๊ฐ์ฒด(์ƒ์„ฑ์ž) ์ •์˜
    	function Blog(b,d)
    	{
    		// ๊ฐ์ฒด๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ์†์„ฑ
    		this.body = b;
    		this.date = d;
    	}
    	
    	// ๊ฐ์ฒด 1๊ฐœ ์ƒ์„ฑ -----------------------------------
    	var blog = new Blog("๋ธ”๋กœ๊ทธ ๊ฐœ์„ค", "2023-11-15");
    	
    	// ์ƒ์„ฑ๋œ ๊ฐ์ฒด์˜ ์†์„ฑ(๋ฉค๋ฒ„) ์ ‘๊ทผ
    	var str = blog.body + " / " + blog.date;
    	
    	// ํ™•์ธ
    	//alert(str);
    	//--==>> ๋ธ”๋กœ๊ทธ ๊ฐœ์„ค / 2023-11-15
    	
    	// ๊ฐ์ฒด ์—ฌ๋Ÿฌ๊ฐœ ์ƒ์„ฑ -----------------------------------
    	// 1) ๋ฐฉ๋ฒ•1
    	/* 
    	var ob1 = new Blog("๋ธ”๋กœ๊ทธ ๊ฐœ์„ค", "2023-11-15");
    	var ob2 = new Blog("๋ธ”๋กœ๊ทธ ๋ ˆ์ด์•„์›ƒ ๊ตฌ์„ฑ", "2023-11-16");
    	var ob3 = new Blog("์ƒ์„ฑ์ž ์ด์šฉํ•œ ๊ฐ์ฒด ์ƒ์„ฑ", "223-11-17");
    	
    	var arr = [ob1, ob2, ob3];
    	 */
    
    	// 2) ๋ฐฉ๋ฒ•2
    	var arr = [new Blog("๋ธ”๋กœ๊ทธ ๊ฐœ์„ค", "2023-11-15")
    			 , new Blog("๋ธ”๋กœ๊ทธ ๋ ˆ์ด์•„์›ƒ ๊ตฌ์„ฑ", "2023-11-16")
    			 , new Blog("์ƒ์„ฑ์ž ์ด์šฉํ•œ ๊ฐ์ฒด ์ƒ์„ฑ", "2023-11-17")];
    	
    	//str = "<table border='1' class='table'>";
    	str = "<table class='table'>";
    	str += "<tr><th>์ œ๋ชฉ</th><th>๋‚ ์งœ</th></tr>";
    	
    	for (var i = 0; i < arr.length; i++)
    	{
    		str += "<tr>";
    		str += "<td>" + arr[i].body + "</td>"
    		str += "<td>" + arr[i].date + "</td>" ;
    		str += "</tr>";
    	}
    	
    	str += "</table>";
    	
    	var result = document.getElementById("result");
    	
    	result.innerHTML = str;
    	
    	
    }
    </script>
    
    </head>
    <body class="section">
    	
    <div>
    	<h1>์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํ™œ์šฉ</h1>
    	<hr>
    </div>	
    
    <div class="layout">
    	<h2>์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ฐ์ฒด(์‚ฌ์šฉ์ž ์ •์˜ ๊ฐ์ฒด)</h2>
    	
    	<div class="btn_box">
    		<input type="button" value="์‚ฌ์šฉ์ž ์ •์˜ ๊ฐ์ฒด ํ…Œ์ŠคํŠธ" onclick="objTest()">
    	</div>
    	<div id="result"></div>
    </div>
    </body>
    </html>