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

(72)[Web]8์ผ์ฐจ: ((Javascript))F_WebApp03>Test037~038

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

๋ชฉ์ฐจ

    1. 2023.12.6(์ˆ˜)

    F_WebApp03

    ใ„ด C:\WebStudy\WebApp03\WebContent

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

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Test037.html</title>
    <!-- <link rel="stylesheet" type="text/css" href="css/main.css"> -->
    <link rel="stylesheet" type="text/css" href="css/style.css">
    <style type="text/css">
    	th{text-align: left;}
    </style>
    
    <script type="text/javascript">
    function objTest()
    {
    	// ํ™•์ธ
    	//alert("ํ•จ์ˆ˜ ํ˜ธ์ถœ");
    	
    	// ์‚ฌ์šฉ์ž ์ •์˜ ๊ฐ์ฒด
    	// Test036.html ์—์„œ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์‚ฌ์šฉ์ž ์ •์˜ ๊ฐ์ฒด ๊ตฌ์„ฑ
    	// ๋‹จ, ์ฐจ์ด์  ํ™•์ธ~!!! check~!!!
    	function Blog(b,d)
    	{
    		// ์ฃผ์š” ์†์„ฑ ๊ตฌ์„ฑ
    		this.body = b;
    		this.date = d;
    		
    		// ๋‚ ์งœ ์ถœ๋ ฅ์šฉ ํ•จ์ˆ˜ ์ •์˜
    		this.userLocalString = function()
    		{
    			return d.getFullYear() + "-" + (d.getMonth()+1) + "-" + d.getDate();
    		};
    	}
    	
    	// ๊ฐ์ฒด ์ƒ์„ฑ
    	var blog = new Blog("๋ธ”๋กœ๊ทธ ๊ฐœ์„ค", "2023-11-15");
    	var str = blog.body + " / " + blog.date;
    	
    	// ํ™•์ธ
    	//alert(str);
    	//--==>> ๋ธ”๋กœ๊ทธ ๊ฐœ์„ค / 2023-11-15
    	
    	// Test036.html ์—์„œ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ
    	// ์‚ฌ์šฉ์ž ์ •์˜ ๊ฐ์ฒด ์—ฌ๋Ÿฌ ๊ฐœ๋ฅผ ์ž๋ฐ” ์Šคํฌ๋ฆฝํŠธ ๋ฐฐ์—ด ๊ตฌ์กฐ์— ์ €์žฅ.
    	// ๋‹จ, ์ฐจ์ด์  ํ™•์ธ~!!! check~!!!
    	// -> ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋‚ด์žฅ ๊ฐ์ฒด ํ™œ์šฉ
    	var arr = [new Blog("๋ธ”๋กœ๊ทธ ๊ฐœ์„ค", new Date("2023/11/15"))
    			 , new Blog("๋ธ”๋กœ๊ทธ ๋ ˆ์ด์•„์›ƒ ๊ตฌ์„ฑ", new Date("2023/11/16"))
    			 , new Blog("์ƒ์„ฑ์ž ์ด์šฉํ•œ ๊ฐ์ฒด ์ƒ์„ฑ", new Date("2023/11/17"))];
    	
    	/* 
    	โ—‹ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ์˜ ๋‚ ์งœ ๋ฐ์ดํ„ฐ
    	Date ๊ฐ์ฒด๋Š” ๋‚ ์งœ์™€ ์‹œ๊ฐ„ ์ž‘์—…์„ ํ•˜๋Š”๋ฐ ์‚ฌ์šฉ๋˜๋Š” ๊ฐ€์žฅ ๊ธฐ๋ณธ์ ์ธ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋‚ด์žฅ ๊ฐ์ฒด์ด๋‹ค.
    	
    	var now = new Date();
    	now.toString();
    	now.toLocaleString();
    	now.toLocaleDateString();
    	now.toLocaleTimeString();
    	now.getFullYear();
    	now.getMonth()+1;		//-- check~!!!(์›” ๋‹จ์œ„๋Š” ์ž๋ฐ”์—์„œ์ฒ˜๋Ÿผ 0๋ถ€ํ„ฐ ์‹œ์ž‘๋œ๋‹ค.)
    	now.getDate();
    	
    	โ€ป ์ฃผ์˜
    		var userDate1 = new Date("2023/11/15");	//--(O)
    		var userDate2 = new Date(2023,11,15);	//--(O)
    		var userDate3 = new Date(Nov, 15, 2023);//--(O)
    		var userDate4 = new Date("2023-11-15");	//--(X)
    		var userDate5 = new Date("20231115");	//--(X)
    	
    	*/
    	
    	str = "<table>";
    	str += "<tr><th>์ œ๋ชฉ</th><th>๋‚ ์งœ</th></tr>"
    	
    	// Test036.html-- check~!!!
    	/* for (var i = 0; i < arr.length; i++)
    	{
    		str += "<tr>";
    		str += "<td>" + arr[i].body + "</td>"
    		str += "<td>" + arr[i].date + "</td>" ;
    		str += "</tr>";
    	} */
    	
    	for (var i = 0; i < arr.length; i++)
    	{
    		str += "<tr>";
    		str += "<td>" + arr[i].body + "</td>";
    		//str += "<td>" + arr[i].date + "</td>";
    		str += "<td>" + arr[i].userLocalString() + "</td>";
    		str += "</tr>";		
    	}
    	str += "</table>";
    	
    	var result = document.getElementById("result");
    	
    	result.innerHTML = str;
    	
    }
    </script>
    </head>
    <body class="section">
    <div>
    	<h1>์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํ™œ์šฉ</h1>
    </div>
    
    <div class="layout">
    	<h2>์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ฐ์ฒด(์‚ฌ์šฉ์ž ์ •์˜ ๊ฐ์ฒด)-(2)</h2>
    	
    	<div class="btn_box">
    		<input type="button" value="์‚ฌ์šฉ์ž ์ •์˜ ๊ฐ์ฒด" class="btn control" onclick="objTest()">
    	</div>
    	
    	<div>
    		<div id="result"></div>
    	</div>
    </div>
    </body>
    </html>

    ใ„ดใ„ดTest038.html_์‚ฌ์šฉ์ž ์ •์˜ ๊ฐ์ฒด ๋ฐ ํ”„๋กœํ† ํƒ€์ž… ํ™œ์šฉ

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Test038.html</title>
    <!-- <link rel="stylesheet" type="text/css" href="css/main.css"> -->
    <link rel="stylesheet" type="text/css" href="css/style.css">
    
    <style type="text/css">
    	table{width: 100%;}
    	th{text-align: left;}
    	#uName{width: 150px;}
    	#uContent{width: 100%;}
    	#btn{width: 100%;}
    </style>
    
    <script type="text/javascript">
    	// ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋ฐฐ์—ด ๊ฐ์ฒด ๊ตฌ์„ฑ
    	var boardArray = new Array();
    	
    	// ์‚ฌ์šฉ์ž ์ •์˜ ๊ฐ์ฒด ๊ตฌ์„ฑ(-> ์ƒ์„ฑ์ž ํ•จ์ˆ˜ ์ •์˜)
    	/* **
    	๊ฐ์ฒด๋ฅผ ๊ตฌ์„ฑํ•œ๋‹ค -> 
    		- ์ž๋ฐ”๋Š” ํด๋ž˜์Šค๋กœ ๋งŒ๋“ค์–ด์ง
    		- ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ํ•จ์ˆ˜์˜ ํ˜•ํƒœ๋กœ ๋งŒ๋“ค์–ด์ง
    			๋”ฐ๋ผ์„œ, ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ๋Š” ๊ฐ์ฒด์˜ ๊ฒฝ์šฐ ์ฒซ ๊ธ€์ž๋ฅผ ๋Œ€๋ฌธ์ž๋กœ ๋งŒ๋“ค๊ธฐ๋กœ ์•”๋ฌต์ ์œผ๋กœ ์•ฝ์†ํ•จ
    	this ->
    		- ์ž๋ฐ”๋Š” ํด๋ž˜์Šค๋ฅผ ์ฐพ์•„๊ฐ
    		- ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ํ•ด๋‹น ํ•จ์ˆ˜๊ฐ€ ๋Œ์•„๊ฐ€๋Š” ๊ทธ ์ž์ฒด..?
    	** */
    	function Board(uName,uContent)
    	{
    		this.userName = uName;
    		this.content = uContent;
    		this.writeDay = new Date();
    	};
    		
    	// ํ”„๋กœํ† ํƒ€์ž… ๊ตฌ์„ฑ์„ ํ†ตํ•ด... ์‚ฌ์šฉ์ž ์ •์˜ ํ•จ์ˆ˜(๊ธฐ๋Šฅ, ๋™์ž‘) ์ •์˜
    	//Board.prototype.userLocalString = function(){ };
    	Board.prototype.userLocalString = function()
    	{ 
    		return this.writeDay.getFullYear() + "-"
    				+ (this.writeDay.getMonth()+1) + "-"
    				+ this.writeDay.getDate() + " "
    				+ this.writeDay.getHours() + ":"
    				+ this.writeDay.getMinutes() + ":"
    				+ this.writeDay.getSeconds();
    				
    		// ์‹œ -> getHours()
    		// ๋ถ„ -> getMinutes()
    		// ์ดˆ -> getSeconds()
    	};
    	
    	// ๊ธ€์“ฐ๊ธฐ ๋ฒ„ํŠผ์ด ํด๋ฆญ๋˜์—ˆ์„ ๋•Œ ํ˜ธ์ถœ๋˜์–ด ๊ธฐ๋Šฅํ•˜๋Š” ํ•จ์ˆ˜
    	function protoTest()
    	{
    		// ํ™•์ธ
    		//alert("ํ•จ์ˆ˜ ํ˜ธ์ถœ~!!!");
    		
    		var uName = document.getElementById("uName").value;
    		var uContent = document.getElementById("uContent").value;
    		
    		var len = boardArray.length;
    		
    		// ํ™•์ธ
    		//alert(len);
    		//--==>> ํ˜„์žฌ ์‹œ์ ์—์„œ ํ…Œ์ŠคํŠธ์‹œ... -> 0
    		
    		boardArray[len] = new Board(uName, uContent);
    		
    		// ํ™•์ธ
    		//alert(len);
    		//--==>> ์ž‘์„ฑ์ด ์ด๋ฃจ์–ด์งˆ ๋•Œ๋งˆ๋‹ค... -> +1
    		
    		// ๋‚ด์šฉ ์ถœ๋ ฅ -> ์ถœ๋ ฅ ํ•จ์ˆ˜ ํ˜ธ์ถœ
    		print(len);
    	}
    	
    	// ๋‚ด์šฉ ์ถœ๋ ฅ ํ•จ์ˆ˜ ์ •์˜
    	function print(idx)
    	{
    		// ํ™•์ธ
    		//var strTemp = boardArray[idx].content;
    		//alert(strTemp);
    		var uNameTxt = boardArray[idx].userName;
    		var uContentTxt = boardArray[idx].content;
    		var num = idx+1;
    		var date = boardArray[idx].userLocalString();
    		
    		var trNode = document.createElement("tr");
    		trNode.appendChild(createTdNode(num));
    		trNode.appendChild(createTdNode(uNameTxt));
    		trNode.appendChild(createTdNode(uContentTxt));
    		trNode.appendChild(createTdNode(date));
    				
    		var tableNode = document.getElementById("bbsTable");
    		tableNode.appendChild(trNode);
    		
    	}
    	
    	// td ๋…ธ๋“œ๋ฅผ ์ƒ์„ฑ ๋ฐ ๋ฐ˜ํ™˜ ํ•จ์ˆ˜ ์ •์˜
    	function createTdNode(val)
    	{
    		var textNode = document.createTextNode(val);
    		var tdNode = document.createElement("td");
    		tdNode.appendChild(textNode);
    		
    		return tdNode;
    	}
    	
    </script>
    
    </head>
    <body class="section">
    <div>
    	<h1>์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํ™œ์šฉ</h1>
    </div>
    
    <div class="layout">
    	<p>์‚ฌ์šฉ์ž ์ •์˜ ๊ฐ์ฒด ๋ฐ ํ”„๋กœํ† ํƒ€์ž… ํ™œ์šฉ</p>
    	
    	<div>
    		<form>
    			<!-- ์ž…๋ ฅ ํผ์„ ๊ตฌ์„ฑํ•˜๋Š” ๋ ˆ์ด์•„์›ƒ ํ…Œ์ด๋ธ” -> ๋‚˜์ค‘์— div๋กœ ๊ตฌ์„ฑํ•ด ๋ณผ ๊ฒƒ -->
    			<div class="table_box">
    				<table class="table">
    					<tr>
    						<th>์ž‘์„ฑ์ž</th>
    						<td><input type="text" id="uName" class="txt"></td>
    					</tr>
    					<tr>
    						<th>๋‚ด์šฉ</th>
    						<td><input type="text" id="uContent" class="txt"></td>
    					</tr>
    					<tr>
    						<th colspan="2"><input type="button" value="๊ธ€์“ฐ๊ธฐ" class="btn" onclick="protoTest()"></th>
    					</tr>
    				</table>
    			</div>
    			
    			<!-- ๋‚ด์šฉ์„ ๋ฆฌ์ŠคํŠธ ํ˜•์‹์œผ๋กœ ๋ณผ ์ˆ˜ ์žˆ๋„๋ก ๊ตฌ์„ฑํ•˜๋Š” ๋ ˆ์ด์•„์›ƒ ํ…Œ์ด๋ธ” -->
    			<div class="table_box">
    				<table class="table table_box" id="bbsTable">
    					<tr>
    						<th>๋ฒˆํ˜ธ</th><th>์ž‘์„ฑ์ž</th><th>๋‚ด์šฉ</th><th>์ž‘์„ฑ์ผ</th>
    					</tr>
    				</table>
    			</div>
    		</form>
    	</div>
    </div>
    
    </body>
    </html>