โถ ๊ฐ์ฒด
1. ๋ด์ฅ ๊ฐ์ฒด ์์ฑํ๊ธฐ
๊ฐ์ฒด๋ฅผ ์์ฑํ ๋๋ new๋ผ๋ ํค์๋์ ์์ฑ ํจ์๋ฅผ ์ฌ์ฉํ๋ค.
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<title> ์ฌ์ฉ์ ์ ์ ๊ฐ์ฒด </title>
<script>
var tv = new Object( );
tv.color = "white";
tv.price = 300000;
tv.info = function( ) {
document.write("tv ์์: " + this.color, "<br>");
document.write("tv ๊ฐ๊ฒฉ: " + this.price, "<br>");
}
var car = {
color: "black",
price: 5000000,
info: function( ) {
document.write("car ์์: " + this.color, "<br>");
document.write("car ๊ฐ๊ฒฉ: " + this.price, "<br>");
}
};
document.write("<h1>tv ๊ฐ์ฒด ๋ฉ์๋ ํธ์ถ</h1>");
tv.info();
document.write("<h1>car ๊ฐ์ฒด ๋ฉ์๋ ํธ์ถ</h1>");
car.info();
</script>
</head>
<body>
</body>
</html>
2. ๋ ์ง ์ ๋ณด ๊ฐ์ฒด
๋ ์ง๋ ์๊ฐ ๊ด๋ จ ์ ๋ณด๋ฅผ ์ ๊ณต๋ฐ๊ณ ์ถ์ ๋๋ ๋ ์ง ๊ฐ์ฒด(Date Object)๋ฅผ ์์ฑํ๋ค.
โ
์์ 1) ํ์ฌ ๋ ์ง ๊ฐ์ฒด์ ํน์ ๋ ์ง ๊ฐ์ฒด๋ฅผ ์ด์ฉํ์ฌ 2002๋ ์๋์ปต ๋ ์ง์ ๊ด๋ จ๋ ์ ๋ณด ์ถ๋ ฅํ๊ธฐ
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset = "UTF-8">
<title> ๋ ์ง ์ ๋ณด ๊ฐ์ฒด </title>
<script>
var today = new Date( );
var nowMonth = today.getMonth( ),
nowDate = today.getDate( ),
nowDay = today.getDay( );
document.write("<h1>์ค๋ ๋ ์ง ์ ๋ณด</h1>");
document.write("ํ์ฌ ์: " + nowMonth, "<br>");
document.write("ํ์ฌ ์ผ: " + nowDate, "<br>");
document.write("ํ์ฌ ์์ผ:" + nowDay, "<br>");
var worldcup = new Date(2002, 4, 31);
var theMonth = worldcup.getMonth( ),
theDate = worldcup.getDate( ),
theDay = worldcup.getDay( );
document.write("<h1>์๋์ปต ๋ ์ง ์ ๋ณด</h1>");
document.write("2002์๋์ปต ๋ช ์: " + theMonth, "<br>");
document.write("2002์๋์ปต ๋ช ์ผ: " + theDate, "<br>");
document.write("2002์๋์ปต ๋ฌด์จ ์์ผ: " + theDay, "<br>");
</script>
</head>
<body>
</body>
</html>
getMonth() → ์ ์ ๋ณด๋ฅผ ๊ฐ์ ธ์ด(ํ์ฌ ์ -1)
getDay() → ์์ผ ์ ๋ณด๋ฅผ ๊ฐ์ ธ์ด(์ผ:0 ~ ํ :6)
์์ 2) ํ์ฌ ๋ ์ง๋ถํฐ ์ฐ๋ง๊น์ง ๋ฉฐ์น ์ด ๋จ์๋์ง ๋ ์ง ์ ๋ณด ๊ฐ์ฒด๋ฅผ ์ด์ฉํ์ฌ ์์๋ณด๊ธฐ
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset = "UTF-8">
<title> ๋ ์ง ์ ๋ณด ๊ฐ์ฒด </title>
<script>
var today = new Date();
var nowYear = today.getFullYear();
var theDate = new Date(nowYear, 11, 31);
var diffDate = theDate.getTime( ) - today.getTime( );
var result = Math.ceil( diffDate / (60 * 1000 * 60 * 24) );
document.write("<h1>์ค๋๋ถํฐ ์ฌํด ์ฐ๋ง๊น์ง ๋จ์ ๋ ์ง</h1>");
document.write("D-day: " + result + "์ผ ๋จ์์ต๋๋ค.");
</script>
</head>
<body>
</body>
</html>
3. ์ํ ๊ฐ์ฒด
์๋ฐ์คํฌ๋ฆฝํธ ๋ด์ฅ ๊ฐ์ฒด์๋ ์ํ๊ณผ ๊ด๋ จ๋ ๊ธฐ๋ฅ๊ณผ ์์ฑ์ ์ ๊ณตํ๋ ์ํ ๊ฐ์ฒด๊ฐ ์๋ค. ๋ํ๊ธฐ, ๊ณฑํ๊ธฐ, ๋๋๊ธฐ ๋ฑ์ ์์์ ๋ฐฐ์ด ์ฐ์ ์ฐ์ฐ์๋ฅผ ์ฌ์ฉํ๋ฉด ๋๋ค. ํ์ง๋ง ์ต๋๊ฐ, ์ต์๊ฐ, ๋ฐ์ฌ๋ฆผ๊ฐ ๋ฑ์ ์ฐ์ ์ฐ์ฐ์๋ก ๊ตฌํ ์ ์๋ค. ํ์ง๋ง ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ฉด ๊ฐ์ ์ฒ๋ฆฌํ ์ ์๋ค.
์ข ๋ฅ |
์ค๋ช |
Math.abs(์ซ์) |
์ซ์์ ์ ๋๊ฐ์ ๋ฐํํ๋ค. |
Math.max(์ซ์1, ์ซ์2, ์ซ์3, ์ซ์4) |
์ซ์ ์ค ๊ฐ์ฅ ํฐ ๊ฐ์ ๋ฐํํ๋ค. |
Math.min(์ซ์1, ์ซ์2, ์ซ์3, ์ซ์4) |
์ซ์ ์ค ๊ฐ์ฅ ์ ์ ๊ฐ์ ๋ฐํํ๋ค |
Math.pow(์ซ์, ์ ๊ณฑ๊ฐ) |
์ซ์์ ๊ฑฐ๋ญ์ ๊ณฑ๊ฐ์ ๋ฐํํ๋ค. |
Math.random() |
0~1 ์ฌ์ด์ ๋์๋ฅผ ๋ฐํํ๋ค. |
Math.round(์ซ์) |
์์์ ์ฒซ์งธ ์๋ฆฌ์์ ๋ฐ์ฌ๋ฆผํ์ฌ ์ ์๋ฅผ ๋ฐํํ๋ค. |
Math.ceil(์ซ์) |
์์์ ์ฒซ์งธ ์๋ฆฌ์์ ๋ฌด์กฐ๊ฑด ์ฌ๋ฆผํ์ฌ ์ ์๋ฅผ ๋ฐํํ๋ค. |
Math.floor(์ซ์) |
์์์ ์ฒซ์งธ ์๋ฆฌ์์ ๋ฌด์กฐ๊ฑด ๋ด๋ฆผํ์ฌ ์ ์๋ฅผ ๋ฐํํ๋ค. |
Math.sqrt(์ซ์) |
์ซ์์ ์ ๊ณฑ๊ทผ๊ฐ์ ๋ฐํํ๋ค. |
Math.PI |
์์ฃผ์จ ์์๋ฅผ ๋ฐํํ๋ค. |
์์ 1)
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset = "UTF-8">
<title> ์ํ๊ฐ์ฒด </title>
<script>
var num = 2.1234;
var maxNum = Math.max(10, 5, 8, 30),
minNum = Math.min(10, 5, 8, 30),
roundNum = Math.round(num),
floorNum = Math.floor(num),
ceilNum = Math.ceil(num),
rndNum = Math.random( ),
piNum = Math.PI;
document.write(maxNum, "<br>");
document.write(minNum, "<br>");
document.write(roundNum, "<br>");
document.write(floorNum, "<br>");
document.write(ceilNum, "<br>");
document.write(rndNum, "<br>");
document.write(piNum, "<br>");
</script>
</head>
<body>
</body>
</html>
์์ 2)
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset = "UTF-8">
<title> ์ํ๊ฐ์ฒด </title>
<script>
document.write("<h1>์ปดํจํฐ ๊ฐ์, ๋ฐ์, ๋ณด ๋ง์ถ๊ธฐ</h1>");
var game = prompt("๊ฐ์, ๋ฐ์, ๋ณด ์ค ์ ํํ์ธ์?", "๊ฐ์");
var gameNum;
switch(game) {
case "๊ฐ์": gameNum = 1;
break;
case "๋ฐ์": gameNum = 2;
break;
case "๋ณด": gameNum = 3;
break;
default: alert("์๋ชป ์์ฑํ์
จ์ต๋๋ค.");
location.reload();
}
var com = Math.ceil( Math.random() * 3 );
document.write("<img src=\"images/math_img_" + com + ".jpg\">");
if(gameNum == com) {
document.write("<img src=\"images/game_1.jpg\">");
} else {
document.write("<img src=\"images/game_2.jpg\">");
}
</script>
</head>
<body>
</body>
</html>
4. ๋ฐฐ์ด ๊ฐ์ฒด
์ฌ๋ฌ ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ํ๋์ ์ ์ฅ์์ ์ ์ฅํ๋ ค๋ฉด ๋ฐฐ์ด ๊ฐ์ฒด(Array Object)๋ฅผ ์์ฑํ๋ฉด ๋๋ค.
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset = "UTF-8">
<title> ๋ฐฐ์ด๊ฐ์ฒด </title>
<script>
var arr = [30, "๋ฐ๋ฅด๋ฆ", true];
document.write("<h3>๋ฐฐ์ด๊ฐ ๊ฐ์ ธ์ค๊ธฐ-1</h3>");
document.write(arr[0], "<br>");
document.write(arr[1], "<br>");
document.write(arr[2], "<br>");
document.write("<h3>๋ฐฐ์ด๊ฐ ๊ฐ์ ธ์ค๊ธฐ-2</h3>");
for(var i = 0; i < arr.length; i++){
document.write(arr[i], "<br>");
}
document.write("<h3>๋ฐฐ์ด๊ฐ ๊ฐ์ ธ์ค๊ธฐ-3</h3>");
for(i in arr){
document.write(arr[i], "<br>");
}
</script>
</head>
<body>
</body>
</html>
-๋ฐฐ์ด ๊ฐ์ฒด์ ๋ฉ์๋ ๋ฐ ์์ฑ
์ข ๋ฅ |
์ค๋ช |
join(์ฐ๊ฒฐ ๋ฌธ์) |
๋ฐฐ์ด ๊ฐ์ฒด์ ๋ฐ์ดํฐ๋ฅผ ์ฐ๊ฒฐ ๋ฌธ์ ๊ธฐ์ค์ผ๋ก 1๊ฐ์ ๋ฌธ์ํ ๋ฐ์ดํฐ๋ก ๋ฐํํ๋ค. |
reverse() |
๋ฐฐ์ด ๊ฐ์ฒด์ ๋ฐ์ดํฐ ์์๋ฅผ ๊ฑฐ๊พธ๋ก ๋ฐ๊พผ ํ ๋ฐํํ๋ค. |
sort() |
๋ฐฐ์ด ๊ฐ์ฒด์ ๋ฐ์ดํฐ๋ฅผ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํ๋ค. |
slice(index1, index2) |
๋ฐฐ์ด ๊ฐ์ฒด์ ๋ฐ์ดํฐ ์ค ์ํ๋ ์ธ๋ฑ์ค ๊ตฌ๊ฐ๋งํผ ์๋ผ์ ๋ฐฐ์ด ๊ฐ์ฒด๋ก ๊ฐ์ ธ์จ๋ค. |
splice() |
๋ฐฐ์ด ๊ฐ์ฒด์ ์ง์ ๋ฐ์ดํฐ๋ฅผ ์ญ์ ํ๊ณ ๊ทธ ๊ตฌ๊ฐ์ ์ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ ํ ์ ์๋ค. |
concat() |
2๊ฐ์ ๋ฐฐ์ด ๊ฐ์ฒด๋ฅผ ํ๋๋ก ๊ฒฐํฉํ๋ค. |
pop() |
๋ฐฐ์ด์ ์ ์ฅ๋ ๋ฐ์ดํฐ ์ค ๋ง์ง๋ง ์ธ๋ฑ์ค์ ์ ์ฅ๋ ๋ฐ์ดํฐ๋ฅผ ์ญ์ ํ๋ค. |
push(new data) |
๋ฐฐ์ด ๊ฐ์ฒด์ ๋ง์ง๋ง ์ธ๋ฑ์ค์ ์ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ ํ๋ค. |
shift() |
๋ฐฐ์ด ๊ฐ์ฒด์ ์ ์ฅ๋ ๋ฐ์ดํฐ ์ค ์ฒซ ๋ฒ์งธ ์ธ๋ฑ์ค์ ์ ์ฅ๋ ๋ฐ์ดํฐ๋ฅผ ์ญ์ ํ๋ค. |
unshift(new data) |
๋ฐฐ์ด ๊ฐ์ฒด์ ๊ฐ์ฅ ์์ ์ธ๋ฑ์ค์ ์ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ ํ๋ค. |
length |
๋ฐฐ์ด์ ์ ์ฅ๋ ์ด ๋ฐ์ดํฐ์ ๊ฐ์๋ฅผ ๋ฐํํ๋ค. |
์์ 1)
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset = "UTF-8">
<title> ๋ฐฐ์ด๊ฐ์ฒด </title>
<script>
var arr_1 = ["์ฌ๋น", "๊ต๋", "๋ฐฉ๋ฐฐ", "๊ฐ๋จ"];
var arr_2 = ["์ ์ฌ", "์๊ตฌ์ ", "์ฅ์"];
var result = arr_1.join("-");
console.log(result);
result = arr_1.concat(arr_2);
console.log(result);
result = arr_1.slice(1, 3);
console.log(result);
arr_1.sort( );
console.log(arr_1);
arr_2.reverse( );
console.log(arr_2);
</script>
</head>
<body>
</body>
</html>
์์ 2)
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset = "UTF-8">
<title> ๋ฐฐ์ด๊ฐ์ฒด </title>
<script>
var greenArr = ["๊ต๋", "๋ฐฉ๋ฐฐ", "๊ฐ๋จ"];
var yellowArr = ["๋ฏธ๊ธ","์ ์","์์"];
greenArr.splice(2, 1, "์์ด", "์ญ์ผ");
console.log(greenArr);
var data1 = yellowArr.pop( );
var data2 = yellowArr.shift( );
yellowArr.push(data2);
console.log(yellowArr);
yellowArr.unshift(data1);
console.log(yellowArr);
</script>
</head>
<body>
</body>
</html>
5. ๋ฌธ์์ด ๊ฐ์ฒด
๋ฌธ์์ด ๊ฐ์ฒด(String Object)๋ ๋ฌธ์ํ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ฒด๋ก ์ทจ๊ธํ๋ ๊ฒ์ผ๋ก, ์๋ฐ์คํฌ๋ฆฝํธ์์ ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉํ๋ค.
var t = new String("hello javascript"); // ๋ฌธ์์ด ๊ฐ์ฒด ์์ฑ
var t = "hello javascript"; // ๋ฌธ์์ด ๊ฐ์ฒด ์์ฑ
-๋ฌธ์์ด ๊ฐ์ฒด์ ๋ฉ์๋ ๋ฐ ์์ฑ
์ข ๋ฅ |
์ค๋ช |
charAt(index) |
๋ฌธ์์ด์์ ์ธ๋ฑ์ค ๋ฒํธ์ ํด๋นํ๋ ๋ฌธ์๋ฅผ ๋ฐํํ๋ค. |
indexOf("์ฐพ์ ๋ฌธ์") |
๋ฌธ์์ด์์ ์ผ์ชฝ๋ถํฐ ์ฐพ์ ๋ฌธ์์ ์ผ์นํ๋ ๋ฌธ์๋ฅผ ์ฐพ์ ์ ์ผ ๋จผ์ ์ผ์นํ๋ ๋ฌธ์์ ์ธ๋ฑ์ค ๋ฒํธ๋ฅผ ๋ฐํํ๋ค. ๋ง์ผ ์ฐพ๋ ๋ฌธ์๊ฐ ์์ผ๋ฉด -1์ ๋ฐํํ๋ค. |
lastIndexOf("์ฐพ์ ๋ฌธ์") |
๋ฌธ์์ด์์ ์ค๋ฅธ์ชฝ๋ถํฐ ์ฐพ์ ๋ฌธ์์ ์ผ์นํ๋ ๋ฌธ์๋ฅผ ์ฐพ์ ์ ์ผ ๋จผ์ ์ผ์นํ๋ ๋ฌธ์์ ์ธ๋ฑ์ค ๋ฒํธ๋ฅผ ๋ฐํํ๋ค. ๋ง์ผ ์ฐพ๋ ๋ฌธ์๊ฐ ์์ผ๋ฉด -1์ ๋ฐํํ๋ค. |
match("์ฐพ์ ๋ฌธ์") |
๋ฌธ์์ด์์ ์ผ์ชฝ๋ถํฐ ์ฐพ์ ๋ฌธ์์ ์ผ์นํ๋ ๋ฌธ์๋ฅผ ์ฐพ์ ์ ์ผ ๋จผ์ ์ฐพ์ ๋ฌธ์๋ฅผ ๋ฐํํ๋ค. ๋ง์ผ ์ฐพ๋ ๋ฌธ์๊ฐ ์์ผ๋ฉด null์ ๋ฐํํ๋ค. |
replace("๋ฐ๊ฟ ๋ฌธ์", "์ ๋ฌธ์") |
๋ฌธ์์ด์์ ์ผ์ชฝ๋ถํฐ ๋ฐ๊ฟ ๋ฌธ์์ ์ผ์นํ๋ ๋ฌธ์๋ฅผ ์ฐพ์ ์ ์ผ ๋จผ์ ์ฐพ์ ๋ฌธ์๋ฅผ ์ ๋ฌธ์๋ก ์นํํ๋ค. |
search("์ฐพ์ ๋ฌธ์") |
๋ฌธ์์ด์์ ์ผ์ชฝ๋ถํฐ ์ฐพ์ ๋ฌธ์์ ์ผ์นํ๋ ๋ฌธ์๋ฅผ ์ฐพ์ ์ ์ผ ๋จผ์ ์ผ์นํ๋ ์ธ๋ฑ์ค ๋ฒํธ๋ฅผ ๋ฐํํ๋ค. |
slice(a, b) |
a๊ฐ์ ๋ฌธ์๋ฅผ ์๋ฅด๊ณ b๋ฒ์งธ ์ดํ์ ๋ฌธ์๋ฅผ ์๋ฅธ ํ ๋จ์ ๋ฌธ์๋ฅผ ๋ฐํํ๋ค. |
substring(a, b) |
a ์ธ๋ฑ์ค๋ถํฐ b ์ธ๋ฑ์ค ์ด์ ๊ตฌ๊ฐ์ ๋ฌธ์๋ฅผ ๋ฐํํ๋ค. |
substr(a, ๋ฌธ์ ๊ฐ์) |
๋ฌธ์์ด์ a ์ธ๋ฑ์ค๋ถํฐ ์ง์ ํ ๋ฌธ์ ๊ฐ์๋งํผ ๋ฌธ์์ด์ ๋ฐํํ๋ค. |
split("๋ฌธ์") |
์ง์ ํ ๋ฌธ์๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ฌธ์ ๋ฐ์ดํฐ๋ฅผ ๋๋์ด ๋ฐฐ์ด์ ์ ์ฅํ์ฌ ๋ฐํํ๋ค. |
toLowerCase() |
๋ฌธ์์ด์์ ์๋ฌธ ๋๋ฌธ์๋ฅผ ๋ชจ๋ ์๋ฌธ์๋ก ๋ฐ๊พผ๋ค. |
toUpperCase() |
๋ฌธ์์ด์์ ์๋ฌธ ์๋ฌธ์๋ฅผ ๋ชจ๋ ๋๋ฌธ์๋ก ๋ฐ๊พผ๋ค. |
length |
๋ฌธ์์ด์์ ๋ฌธ์์ ๊ฐ์๋ฅผ ๋ฐํํ๋ค. |
concat("์๋ก์ด ๋ฌธ์") |
๋ฌธ์์ด์ ์๋ก์ด ๋ฌธ์์ด์ ๊ฒฐํฉํ๋ค. |
charCodeAt(index) |
๋ฌธ์์ด index์ ํด๋น ๋ฌธ์์ ์์คํค ์ฝ๋๊ฐ์ ๋ฐํํ๋ค. |
fromCharCode(์์คํค ์ฝ๋ ๊ฐ) |
์์คํค ์ฝ๋๊ฐ์ ํด๋นํ๋ ๋ฌธ์๋ฅผ ๋ฐํํ๋ค. |
trim() |
๋ฌธ์์ ์ ๋๋ ๋ค์ ๊ณต๋ฐฑ ๋ฌธ์์ด์ ์ญ์ ํ๋ค. |
์์ 1)
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset = "UTF-8">
<title> ๋ฌธ์ ๊ฐ์ฒด </title>
<script>
var str = "Hello Thank you good luck to you";
document.write(str.charAt(16), "<br>");
document.write(str.indexOf("you"), "<br>");
document.write(str.indexOf("you", 16), "<br>");
document.write(str.lastIndexOf("you"), "<br>");
document.write(str.lastIndexOf("you", 25), "<br>");
document.write(str.match("luck"), "<br>");
document.write(str.search("you"), "<br>");
document.write(str.substr(21, 4), "<br>");
document.write(str.substring(6, 12), "<br>");
document.write(str.replace("you","me"), "<br>");
document.write(str.toLowerCase(), "<br>");
document.write(str.toUpperCase(), "<br>");
document.write(str.length, "<br>");
var arr = str.split(" ");
document.write(arr[0], "<br>");
document.write(arr[4], "<br>");
document.write(str.charCodeAt(0), "<br>");
document.write(String.fromCharCode(72), "<br>");
</script>
</head>
<body>
</body>
</html>
์์ 2)
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset = "UTF-8">
<title> ๋ฌธ์ ๊ฐ์ฒด </title>
<script>
var userName = prompt("๋น์ ์ ์๋ฌธ ์ด๋ฆ์?","");
var upperName = userName.toUpperCase();
document.write(upperName, "<br>");
var userNum = prompt("๋น์ ์ ์ฐ๋ฝ์ฒ๋?","");
var result = userNum.substring(0, userNum.length - 4) + "****";
document.write(result, "<br>");
</script>
</head>
<body>
</body>
</html>
์์ 3)
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset = "UTF-8">
<title> ๋ฌธ์ ๊ฐ์ฒด </title>
<script>
var userEmail = prompt("๋น์ ์ ์ด๋ฉ์ผ ์ฃผ์๋?", "");
var arrUrl = [".co.kr", ".com", ".net", ".or.kr", ".go.kr"];
var check1 = false;
var check2 = false;
if( userEmail.indexOf("@") > 0 ) { check1=true; }
for(var i = 0; i < arrUrl.length; i++) {
if( userEmail.indexOf(arrUrl[i]) > 0 ) {
check2 = true;
}
}
if( check1 && check2 ) {
document.write( userEmail );
} else {
alert("์ด๋ฉ์ผ ํ์์ด ์๋ชป๋์์ต๋๋ค.");
}
</script>
</head>
<body>
</body>
</html>
6. ๋ธ๋ผ์ฐ์ ๊ฐ์ฒด ๋ชจ๋ธ
๋ธ๋ผ์ฐ์ ์ ๋ด์ฅ๋ ๊ฐ์ฒด๋ฅผ '๋ธ๋ผ์ฐ์ ๊ฐ์ฒด'๋ผ๊ณ ํ๋ค. window๋ ๋ธ๋ผ์ฐ์ ๊ฐ์ฒด์ ์ต์์ ๊ฐ์ฒด์ด๋ฉฐ, window ๊ฐ์ฒด์๋ ํ์ ๊ฐ์ฒด๊ฐ ํฌํจ๋์ด ์๋ค. ์ฆ, ๊ณ์ธต์ ๊ตฌ์กฐ๋ก ์ด๋ฃจ์ด์ ธ ์์ผ๋ฉฐ, ์ด๋ฅผ ๋ธ๋ผ์ฐ์ ๊ฐ์ฒด ๋ชจ๋ธ(BOM, Browser Object Model)์ด๋ผ๊ณ ํ๋ค.
-window ๊ฐ์ฒด์ ๋ฉ์๋ ์ข ๋ฅ
์ข ๋ฅ |
์ค๋ช |
open("URL", "์ ์ฐฝ ์ด๋ฆ", "์ ์ฐฝ ์ต์ ") |
URL ํ์ด์ง๋ฅผ ์ ์ฐฝ์ผ๋ก ๋ํ๋ธ๋ค. |
alert(data) |
๊ฒฝ๊ณ ์ฐฝ์ ๋ํ๋ด๊ณ ๋ฐ์ดํฐ๋ฅผ ๋ณด์ฌ์ค๋ค. ๋ฐฉ๋ฌธ์๊ฐ [ํ์ธ] ๋ฒํผ์ ๋๋ฅด๋ฉด alert()๋ฅผ ์ฌ์ฉํ ๋ค์ ์์น์ ์ฝ๋๋ฅผ ์ํํ๋ค. |
prompt("์ง๋ฌธ", "๋ต๋ณ") |
์ง๋ฌธ๊ณผ ๋ต๋ณ์ผ๋ก ์ง์์๋ต ์ฐฝ์ ๋ํ๋ธ๋ค. |
confirm("์ง๋ฌธ ๋ด์ฉ") |
์ง๋ฌธ ๋ด์ฉ์ผ๋ก ํ์ธ์ด๋ ์ทจ์ ์ฐฝ์ ๋ํ๋ธ๋ค. [ํ์ธ] ๋ฒํผ์ ๋๋ฅด๋ฉด true๋ฅผ ๋ฐํํ๊ณ , [์ทจ์] ๋ฒํผ์ ๋๋ฅด๋ฉด false๋ฅผ ๋ฐํํ๋ค. |
moveTo(x, y) |
์ง์ ํ ์ ์ฐฝ์ ์์น๋ฅผ ์ด๋ํ๋ค. |
resizeTo(width, height) |
์ง์ ํ ์ ์ฐฝ์ ํฌ๊ธฐ๋ฅผ ๋ณ๊ฒฝํ๋ค. |
setInterval(function() { ์๋ฐ์คํฌ๋ฆฝํธ ์ฝ๋ }, ์ผ์ ์๊ฐ ๊ฐ๊ฒฉ) |
์ง์์ ์ผ๋ก ์ผ์ ํ ์๊ฐ ๊ฐ๊ฒฉ์ผ๋ก ํจ์๋ฅผ ํธ์ถํ์ฌ ์ฝ๋๋ฅผ ์คํํ๋ค. |
setTimeout(function() { ์๋ฐ์คํฌ๋ฆฝํธ ์ฝ๋ }, ์ผ์ ์๊ฐ ๊ฐ๊ฒฉ) |
๋จ ํ ๋ฒ ์ผ์ ํ ์๊ฐ ๊ฐ๊ฒฉ์ผ๋ก ํจ์๋ฅผ ํธ์ถํ์ฌ ์ฝ๋๋ฅผ ์คํํ๋ค. |
โ
-open() ๋ฉ์๋๋ฅผ ์ด์ฉํด ํ์ ์ฐฝ ๋ํ๋ด๊ธฐ
open("URL", "์ ์ฐฝ ์ด๋ฆ", "์ ์ฐฝ ์ต์
")
์์ฑ |
์ค๋ช |
width |
์ ์ฐฝ์ ๋๋น๋ฅผ ์ค์ ํ๋ค. |
height |
์ ์ฐฝ์ ๋์ด๋ฅผ ์ค์ ํ๋ค. |
left |
์ ์ฐฝ์ ์ํ(X์ถ) ์์น๋ฅผ ์ค์ ํ๋ค. |
top |
์ ์ฐฝ์ ์์ง(Y์ถ) ์์น๋ฅผ ์ค์ ํ๋ค. |
scrollbars |
์ ์ฐฝ์ ์คํฌ๋กค๋ฐ์ ์จ๊น/๋ ธ์ถ์ ์ค์ ํ๋ค(์จ๊น = no, ๋ ธ์ถ = yes) |
location |
์ ์ฐฝ์ URL ์ฃผ์ ์ ๋ ฅ ์์ญ์ ์จ๊น/๋ ธ์ถ์ ์ค์ ํ๋ค(์จ๊น = no, ๋ ธ์ถ = yes) |
status |
์ ์ฐฝ์ ์ํ ํ์์ค ์์ญ์ ์จ๊น/๋ ธ์ถ์ ์ค์ ํ๋ค(์จ๊น = no, ๋ ธ์ถ = yes) |
toolbars |
์ ์ฐฝ์ ๋๊ตฌ ์์ ์์ญ์ ์จ๊น/๋ ธ์ถ์ ์ค์ ํ๋ค(์จ๊น = no, ๋ ธ์ถ = yes) |
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset = "UTF-8">
<title> window ๊ฐ์ฒด </title>
<style>
*{margin: 0;padding: 0;}
</style>
</head>
<body>
<p>
<img src="images/window_object_1.jpg" usemap="#intro"
alt="์ ๊ฐ ์ฑ
์๊ฐ" />
<map name="intro" id="intro">
<area shape="rect" coords="230,368,280,390" href="#" alt="์ฐฝ ๋ซ๊ธฐ"
onclick="window.close();" />
</map>
</p>
</body>
</html>
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset = "UTF-8">
<title> window ๊ฐ์ฒด </title>
<script>
window.open("winpopup.html", "pop1", "width=300, height=400, \
left=300, top=50");
</script>
</head>
<body>
<h1>์ด์ง์ค ํผ๋ธ๋ฆฌ์ฑ</h1>
</body>
</html>
-alert()
๊ฒฝ๊ณ ์ฐฝ์ ๋ํ๋ผ ๋ ์ฌ์ฉํ๋ค. window.alert() ๋ฉ์๋๋ window ๊ฐ์ฒด๋ฅผ ๋ฐ๋ก ์์ฑํ์ง ์์๋ ์ฌ์ฉํ ์ ์๋ค.
alert("๊ฒฝ๊ณ ๋ฉ์ธ์ง")
-prompt()
์ง์์๋ต ์ฐฝ์ ๋ํ๋ผ ๋ ์ฌ์ฉํ๋ค. window.prompt() ๋ฉ์๋๋ ์์ window ๊ฐ์ฒด๋ฅผ ๋ฐ๋ก ์์ฑํ์ง ์์๋ ์ฌ์ฉํ ์ ์๋ค.
prompt("์ง์ ๋ด์ฉ", "๊ธฐ๋ณธ ๋ต๋ณ");
-confirm()
ํ์ธ/์ทจ์ ์ฐฝ์ ๋ํ๋ผ ๋ ์ฌ์ฉํ๋ค. window.confirm() ๋ฉ์๋๋ ์์ window ๊ฐ์ฒด๋ฅผ ๋ฐ๋ก ์ ์ฅํ์ง ์์๋ ์ฌ์ฉํ ์ ์๋ค.
confirm("์ ๋ง๋ก ์ญ์ ํ์๊ฒ ์ต๋๊น?");
7. ์ผ์ ํ ์๊ฐ ๊ฐ๊ฒฉ์ผ๋ก ์ฝ๋ ์คํํ๊ธฐ
โ
-setInterval(), clearInterval()
์ผ์ ํ ์๊ฐ ๊ฐ๊ฒฉ์ผ๋ก ์ฝ๋๋ฅผ ์คํํ๋ ๋ฉ์๋๋ก๋ setInterval() ๊ณผ setTimeout() ๊ฐ ์๋ค. setInterval()์ ์ผ์ ํ ์๊ฐ ๊ฐ๊ฒฉ์ผ๋ก ์ฝ๋๋ฅผ ๋ฐ๋ณต ์คํํ๋ค. setTimeout()์ ์ผ์ ํ ์๊ฐ ํ์ ์ฝ๋๋ฅผ ์คํํ๊ณ ์ข ๋ฃํ๋ค. clearInterval() ๋ฉ์๋๋ setInterval() ๋ฉ์๋๋ฅผ ์ทจ์ํ๋ค.
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset = "UTF-8">
<title> window ๊ฐ์ฒด </title>
<script>
var addNum = 0;
var subNum = 1000;
var auto_1 = setInterval(function () { // 3์ด(3000) ๊ฐ๊ฒฉ์ผ๋ก ๋ฐ๋ณต ์คํ
addNum++;
console.log("addNum: " + addNum);
}, 3000);
var auto_2 = setInterval(function () { // 3์ด(3000) ๊ฐ๊ฒฉ์ผ๋ก ๋ฐ๋ณต ์คํ
subNum--;
console.log("subNum: " + subNum);
}, 3000);
</script>
</head>
<body>
<h1>์ผ์ ์๊ฐ ๊ฐ๊ฒฉ์ผ๋ก ๊ฐ ์ฆ๊ฐ์ํค๊ธฐ</h1>
<p> ์ฝ์ ํจ๋์ ์ด์ด ํ์ธํ์ธ์.</p>
<button onclick="clearInterval(auto_1)">์ฆ๊ฐ ์ ์ง</button>
<button onclick="clearInterval(auto_2)">๊ฐ์ ์ ์ง</button>
</body>
</html>
-setTimeOut(), clearTimeout()
setTimeout() ๋ฉ์๋๋ ์ผ์ ์๊ฐ์ด ์ง๋๋ฉด ์ฝ๋๋ฅผ ์คํํ๊ณ ์ข ๋ฃํ๋ค. setTimeout() ๋ฉ์๋๋ฅผ ์กฐ๊ธ๋ง ์์ฉํ์ฌ ์ฌ๊ท ํธ์ถ์ ํ๋ฉด setInterval() ๋ฉ์๋์ฒ๋ผ ์ฌ์ฉํ ์๋ ์๋ค. clearTimeout() ๋ฉ์๋๋ setTimeout() ๋ฉ์๋๋ฅผ ์ ๊ฑฐํ๋ค.
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset = "UTF-8">
<title> window ๊ฐ์ฒด </title>
<script>
var addNum = 0;
var auto=setTimeout(function( ) { // 5์ด ํ์ ์ฝ๋๋ฅผ ํ ๋ฒ ์คํํ ํ setTimeout() ๋ฉ์๋๋ฅผ ์ข
๋ฃ
addNum++;
console.log(addNum);
}, 5000);
</script>
</head>
<body>
<h1>์ผ์ ์๊ฐ ๊ฐ๊ฒฉ์ผ๋ก ํ๋ฒ๋ง ๊ฐ ์ฆ๊ฐ์ํค๊ธฐ</h1>
<p> ์ฝ์ ํจ๋์ ์ด์ด ํ์ธํ์ธ์.</p>
</body>
</html>
8. screen ๊ฐ์ฒด
screen ๊ฐ์ฒด๋ ์ฌ์ฉ์์ ๋ชจ๋ํฐ ์ ๋ณด(์์ฑ)๋ฅผ ์ ๊ณตํ๋ ๊ฐ์ฒด์ด๋ค. ์๋ฅผ ๋ค์ด ๋ชจ๋ํฐ์ ๋๋น๋ ๋์ด ๋๋ ์ปฌ๋ฌ ํํ (bit)๋ฅผ ๋ฐํํ๋ค.
โ
-screen ๊ฐ์ฒด์ ์์ฑ ์ข ๋ฅ
์ข ๋ฅ |
์ค๋ช |
screen.width |
ํ๋ฉด์ ๋๋น๊ฐ์ ๋ฐํํ๋ค. |
screen.height |
ํ๋ฉด์ ๋์๊ฐ์ ๋ฐํํ๋ค. |
screen.availWidth |
์์ ํ์์ค์ ์ ์ธํ ํ๋ฉด์ ๋๋น๊ฐ์ ๋ฐํํ๋ค. |
screen.availHeight |
์์ ํ์์ค์ ์ ์ธํ ํ๋ฉด์ ๋์๊ฐ์ ๋ฐํํ๋ค. |
screen.colorDepth |
์ฌ์ฉ์ ๋ชจ๋ํฐ๊ฐ ํํ ๊ฐ๋ฅํ ์ปฌ๋ฌ bit๋ฅผ ๋ฐํํ๋ค. |
9. location ๊ฐ์ฒด
location ๊ฐ์ฒด๋ ์ฌ์ฉ์ ๋ธ๋ผ์ฐ์ ์ ๊ด๋ จ๋ ์์ฑ๊ณผ ๋ฉ์๋๋ฅผ ์ ๊ณตํ๋ ๊ฐ์ฒด๋ค. ํ์ฌ URL์ ๋ํ ์ ๋ณด(์์ฑ)์ ์๋ก ๊ณ ์นจ(reload) ๋ฉ์๋๋ฅผ ์ ๊ณตํ๋ค.
location.์์ฑ;
location.๋ฉ์๋();
์ข ๋ฅ |
์์ฑ |
location.href |
์ฃผ์ ์์ญ์ ์ฐธ์กฐ ์ฃผ์๋ฅผ ์ค์ ํ๊ฑฐ๋ URL์ ๋ฐํํ๋ค. |
location.hash |
URL์ ํด์๊ฐ(#์ ๋ช ์๋ ๊ฐ)์ ๋ฐํํ๋ค. |
location.hostname |
URL์ ํธ์คํธ ์ด๋ฆ์ ์ค์ ํ๊ฑฐ๋ ๋ฐํํ๋ค. |
location.host |
URL์ ํธ์คํธ ์ด๋ฆ๊ณผ ํฌํธ ๋ฒํธ๋ฅผ ๋ฐํํ๋ค. |
location.protocol |
URL์ ํ๋กํ ์ฝ์ ๋ฐํํ๋ค. |
location.search |
URL์ ์ฟผ๋ฆฌ(์์ฒญ๊ฐ)์ ๋ฐํํ๋ค. |
location.reload() |
๋ง์น ๋ธ๋ผ์ฐ์ ์์ F5 ํค๋ฅผ ๋๋ฅธ ๊ฒ์ฒ๋ผ ์๋ก ๊ณ ์นจํ๋ค. |
10. history ๊ฐ์ฒด
history ๊ฐ์ฒด๋ ์ฌ์ฉ์๊ฐ ๋ฐฉ๋ฌธํ ์ฌ์ดํธ์ ๊ธฐ๋ก์ ๋จ๊ธฐ๊ณ ์ด์ ๋ฐฉ๋ฌธ ์ฌ์ดํธ์ ๋ค์ ๋ฐฉ๋ฌธ ์ฌ์ดํธ๋ก ๋ค์ ๋์๊ฐ ์ ์๋ ์์ฑ๊ณผ ๋ฉ์๋๋ฅผ ์ ๊ณตํ๋ค.
history.์์ฑ;
history.๋ฉ์๋();
history.๋ฉ์๋(n);
์ข ๋ฅ |
์ค๋ช |
history.back() |
์ด์ ๋ฐฉ๋ฌธ ์ฌ์ดํธ๋ก ์ด๋ํ๋ค. |
history.forward() |
๋ค์ ๋ฐฉ๋ฌธ ์ฌ์ดํธ๋ก ์ด๋ํ๋ค. |
history.go(์ด๋ ์ซ์) |
์ด๋ ์ซ์์ -2๋ฅผ ์ ๋ ฅํ๋ฉด 2๋จ๊ณ ์ด์ ์ ๋ฐฉ๋ฌธ ์ฌ์ดํธ๋ก ์ด๋ํ๋ค. |
history.length |
๋ฐฉ๋ฌธ ๊ธฐ๋ก์ ์ ์ฅ๋ ๋ชฉ๋ก์ ๊ฐ์๋ฅผ ๋ฐํํ๋ค. |
11. navigator ๊ฐ์ฒด
navigator:์์ฑ;
์ข ๋ฅ |
์ค๋ช |
navigator.appCodeName |
ํ์ฌ ๋ธ๋ผ์ฐ์ ์ ์ฝ๋๋ช ์ ๋ฐํํ๋ค. ํ ์์ ์ ๋ชจ๋ ๋ธ๋ผ์ฐ์ ๋ 'Mozilla'๋ฅผ ๋ฐํํ๋ค. |
navigator.appName |
ํ์ฌ ๋ธ๋ผ์ฐ์ ์ ์ด๋ฆ์ ๋ฐํํ๋ค. ํ ์์ ์ ๋ชจ๋ ๋ธ๋ผ์ฐ์ ๋ 'Netscape'๋ฅผ ๋ฐํํ๋ค. |
navigator.appVersion |
ํ์ฌ ๋ธ๋ผ์ฐ์ ์ ๋ฒ์ ์ ๋ณด๋ฅผ ๋ฐํํ๋ค. ํ ์์ ์ ๋ชจ๋ ๋ธ๋ผ์ฐ์ ๋ '5.0(Win-dows)'์ ๋ฐํํ๋ค. |
navigator.language |
ํ์ฌ ๋ธ๋ผ์ฐ์ ๊ฐ ์ฌ์ฉํ๊ณ ์๋ ์ธ์ด๋ฅผ ๋ฐํํ๋ค. ํ๊ตญ์ด๋ฅผ ์ฌ์ฉํ ๊ฒฝ์ฐ์๋ 'ko'๋ฅผ ๋ฐํํ๋ค. |
navigator.product |
ํ์ฌ ๋ธ๋ผ์ฐ์ ์ ์์ง ์ด๋ฆ์ ๋ฐํํ๋ค. ํฌ๋กฌ์ ๊ฒฝ์ฐ๋ 'Gecko'๋ฅผ ๋ฐํํ๋ค. |
navigator.platform |
ํ์ฌ ์ปดํจํฐ์ ์ด์์ฒด์ ์ ๋ณด๋ฅผ ์ ๊ณตํ๋ค. ์ด์์ฒด์ ๊ฐ ์๋์ฐ์ด๊ณ ์์คํ ์ข ๋ฅ๊ฐ 64๋นํธ(bit)๋ผ๋ ๋ธ๋ผ์ฐ์ ๊ฐ 32๋นํธ๋ก ์ค์น๋์๋ค๋ฉด 'Win32'๋ผ๊ณ ๋ํ๋๋ค. |
navigator.onLine |
์จ๋ผ์ธ ์ํ ์ฌ๋ถ์ ๋ํ ์ ๋ณด๋ฅผ ์ ๊ณตํ๋ค. ๋ง์ผ ์ธํฐ๋ท์ด ์ ์์ ์ผ๋ก ์ฐ๊ฒฐ๋์ด ์๋ ์ํ๋ผ๋ฉด true ๊ฐ์ ๋ฐํํ๋ค. |
navigator.userAgent |
๋ธ๋ผ์ฐ์ ์ ์ด์์ฒด์ ์ ์ข ํฉ ์ ๋ณด๋ฅผ ์ ๊ณตํ๋ค. |
'JavaScript > JavaScript' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋๋ฆผ์ฝ๋ฉ by ์๋ฆฌ] JavaScript ๊ธฐ์ด ๊ฐ์(1) (ES5+) (0) | 2021.10.05 |
---|---|
[JavaScript] ํจ์ (0) | 2021.02.11 |
[JavaScript] ๋ฐ๋ณต๋ฌธ (0) | 2021.02.02 |
[JavaScript] ์ ์ด๋ฌธ (0) | 2021.02.02 |
[JavaScript] ๊ธฐ์ด ๋ฌธ๋ฒ, ๋ณ์, ์ฐ์ฐ์ (0) | 2021.02.02 |
๋๊ธ