[JS] ๋ธŒ๋ผ์šฐ์ € ๊ฐ์ฒด ๋ชจ๋ธ

2021. 10. 26. 16:17ใ†HTML + CSS + JS/JS ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ

728x90

1. ๋ธŒ๋ผ์šฐ์ € ๊ฐ์ฒด 

๋ธŒ๋ผ์šฐ์ € ๊ฐ์ฒด๋Š” ๋ธŒ๋ผ์šฐ์ €์— ๋‚ด์žฅ๋œ ๊ฐ์ฒด๋ฅผ ์˜๋ฏธํ•œ๋‹ค. 

window ๋Š” ๋ธŒ๋ผ์šฐ์ € ๊ฐ์ฒด์˜ ์ตœ์ƒ์œ„ ๊ฐ์ฒด์ด๋ฉฐ, window ๊ฐ์ฒด์—๋Š” ํ•˜์œ„ ๊ฐ์ฒด๋“ค์ด ํฌํ•จ๋˜์–ด์žˆ๋‹ค.

window -> document, location, screen, navigator, history 

 

 

1๏ธโƒฃ window ๊ฐ์ฒด 

window ๊ฐ์ฒด๋Š” ๋ธŒ๋ผ์šฐ์ € ๊ฐ์ฒด์˜ ์ตœ์ƒ์œ„ ๊ฐ์ฒด์ด๋‹ค.

 

- window ๊ฐ์ฒด์˜ ๋ฉ”์„œ๋“œ ์ข…๋ฅ˜ 

open("url", "์ƒˆ์ฐฝ ์ด๋ฆ„", "์ƒˆ์ฐฝ ์˜ต์…˜") : url ํŽ˜์ด์ง€๋ฅผ ์ƒˆ ์ฐฝ์œผ๋กœ ๋‚˜ํƒ€๋‚ธ๋‹ค . 

alert(data) 

prompt("์งˆ๋ฌธ", "๋‹ต๋ณ€")

confrim("์งˆ๋ฌธ๋‚ด์šฉ")

moveTo(x,y) : ์ง€์ •ํ•œ ์ƒˆ ์ฐฝ์˜ ์œ„์น˜๋ฅผ ์ด๋™ํ•œ๋‹ค. 

resizeTo(width, height) : ์ง€์ •ํ•œ ์ƒˆ ์ฐฝ์˜ ํฌ๊ธฐ๋ฅผ ๋ณ€๊ฒฝํ•œ๋‹ค. 

setInterval(function() {}, ์ผ์ •์‹œ๊ฐ„๊ฐ„๊ฒฉ)

setTimeout(function() {}, ์ผ์ •์‹œ๊ฐ„๊ฐ„๊ฒฉ)

 

- open() 

open() ๋ฉ”์„œ๋“œ๋ฅผ ์ด์šฉํ•˜๋ฉด ์ง€์ •ํ•œ url ํŽ˜์ด์ง€๋ฅผ ์ƒˆ ๋ธŒ๋ผ์šฐ์ € ์ฐฝ์— ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋‹ค.

์ด ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ํŒ์—…์„ ๋งŽ์ด ๋งŒ๋“ค์—ˆ๋‹ค๊ณ  ํ•˜๋Š”๋ฐ ์š”์ฆ˜์€ ํŒ์—…์„ ์ž˜ ์•ˆ๋„์šฐ๊ธฐ ๋•Œ๋ฌธ์— ์•Œ์•„๋งŒ ๋‘๊ธฐ 

open("url", "์ƒˆ ์ฐฝ ์ด๋ฆ„", "์ƒˆ ์ฐฝ ์˜ต์…˜") 

width : ์ƒˆ ์ฐฝ์˜ ๋„ˆ๋น„๋ฅผ ์„ค์ • 

height : ์ƒˆ์ฐฝ์˜ ๋†’์ด๋ฅผ ์„ค์ • 

left : ์ƒˆ ์ฐฝ์˜ ์ˆ˜ํ‰ ์œ„์น˜๋ฅผ ์„ค์ • 

top : ์ƒˆ ์ฐฝ์˜ ์ˆ˜์ง ์œ„์น˜๋ฅผ ์„ค์ • 

scrollbars : ์ƒˆ์ฐฝ์˜ ์Šคํฌ๋กค ๋ฐ” ์ˆจ๊น€ ๋…ธ์ถœ์„ ์„ค์ •ํ•œ๋‹ค. no ์ˆจ๊น€ yes ๋…ธ์ถœ 

location  : ์ƒˆ ์ฐฝ์˜ url ์ฃผ์†Œ ์ž…๋ ฅ ์˜์—ญ์˜ ์ˆจ๊น€/ ๋…ธ์ถœ์„ ์„ค์ •ํ•œ๋‹ค. 

status  : ์ƒˆ ์ฐฝ์˜ ์ƒํƒœ ํ‘œ์‹œ์ค„ ์˜์—ญ์˜ ์ˆจ๊น€/๋…ธ์ถœ์„ ์„ค์ •ํ•œ๋‹ค. 

toolbars: ์ƒˆ์ฐฝ์˜ ๋„๊ตฌ ์ƒ์ž ์˜์—ญ์„ ์ˆจ๊น€, ๋…ธ์ถœ ์„ค์ •ํ•œ๋‹ค. 

 

window.close()ํ•˜๋ฉด ๋ธŒ๋ผ์šฐ์ € ์ฐฝ ๋‹ซ์Œ 

 

 

- alert()

๊ฒฝ๊ณ ์ฐฝ์„ ๋‚˜ํƒ€๋‚ผ ๋•Œ ์‚ฌ์šฉ 

 

- prompt()

์งˆ์˜์‘๋‹ต ์ฐฝ์„ ๋‚˜ํƒ€๋‚ผ ๋•Œ ์‚ฌ์šฉ 

 

- confrim() 

ํ™•์ธ/์ทจ์†Œ ์ฐฝ์„ ๋‚˜ํƒ€๋‚ผ ๋•Œ ์‚ฌ์šฉ 

ํ™•์ธ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด true, ์ทจ์†Œ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด false 

 

- setInterval(), clearInterval() 

setIntervar() ๋ฉ”์„œ๋“œ๋Š” ์ฝ”๋“œ๋ฅผ ์ผ์ • ์‹œ๊ฐ„ ๊ฐ„๊ฒฉ์œผ๋กœ ๋ฐ˜๋ณต ์‹คํ–‰ํ•˜๊ณ , clearInterval() ๋ฉ”์„œ๋“œ๋Š” setInterval()์„ ์ทจ์†Œํ•œ๋‹ค. 

๋ฒ„ํŠผ ๋ˆ„๋ฅด๋ฉด clearInterval๋กœ ์ •์ง€ 

 

- setTimeOut()/ clearTimeout()

setTimeOut() ๋ฉ”์„œ๋“œ๋Š” ์ผ์ • ์‹œ๊ฐ„์ด ์ง€๋‚˜๋ฉด ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ์ข…๋ฃŒํ•œ๋‹ค. clearTimeout()๋ฉ”์„œ๋“œ๋Š” setTimeout() ๋ฉ”์„œ๋“œ๋ฅผ ์ œ๊ฑฐํ•œ๋‹ค. 

1 ํ•œ๋ฒˆ ์ฆ๊ฐ€ํ•œ๋‹ค. 

 

2๏ธโƒฃ screen ๊ฐ์ฒด 

screen ๊ฐ์ฒด๋Š” ์‚ฌ์šฉ์ž์˜ ๋ชจ๋‹ˆํ„ฐ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ฐ์ฒด์ด๋‹ค. 

 

- screen ๊ฐ์ฒด์˜ ์†์„ฑ ์ข…๋ฅ˜ 

screen.width  : ํ™”๋ฉด์˜ ๋„ˆ๋น„๊ฐ’ ๋ฐ˜ํ™˜ 

screen.height : ํ™”๋ฉด์˜ ๋†’์ด๊ฐ’ ๋ฐ˜ํ™˜ 

screen.availWidth : ์ž‘์—… ํ‘œ์‹œ์ค„์„ ์ œ์™ธํ•œ ํ™”๋ฉด์˜ ๋„ˆ๋น„๊ฐ’ ๋ฐ˜ํ™˜ 

screen.availHeight : ์ž‘์—… ํ‘œ์‹œ์ค„์„ ์ œ์™ธํ•œ ํ™”๋ฉด์˜ ๋†’์ด๊ฐ’ ๋ฐ˜ํ™˜ 

screen.colorDepth  : ์‚ฌ์šฉ์ž ๋ชจ๋‹ˆํ„ฐ๊ฐ€ ํ‘œํ˜„ ๊ฐ€๋Šฅํ•œ ์ปฌ๋Ÿฌ bit ๋ฐ˜ํ™˜ 

 

 

3๏ธโƒฃ location ๊ฐ์ฒด 

location ๊ฐ์ฒด๋Š” ์‚ฌ์šฉ์ž ๋ธŒ๋ผ์šฐ์ €์™€ ๊ด€๋ จ๋œ ์†์„ฑ๊ณผ ๋ฉ”์„œ๋“œ๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ฐ์ฒด๋‹ค. 

 

- location ๊ฐ์ฒด์˜ ์†์„ฑ ์ข…๋ฅ˜ 

location.href  : ์ฃผ์†Œ ์˜์—ญ์˜ ํ•จ์ˆ˜ ์„ค์ •ํ•˜๊ฑฐ๋‚˜ url ๋ฐ˜ํ™˜ 

location.hash : url ํ•ด์‹œ๊ฐ’(#์— ๋ช…์‹œ๋œ ๊ฐ’)์„ ๋ฐ˜ํ™˜

location.hostname : url ํ˜ธ์ŠคํŠธ ์ด๋ฆ„์„ ์„ค์ •ํ•˜๊ฑฐ๋‚˜ ๋ฐ˜ํ™˜ 

location.host : url์˜ ํ˜ธ์ŠคํŠธ ์ด๋ฆ„๊ณผ ํฌํŠธ๋ฒˆํ˜ธ ๋ฐ˜ํ™˜ 

location.protocol : url ํ”„๋กœํ† ์ฝœ ๋ฐ˜ํ™˜ 

location.search : url ์ฟผ๋ฆฌ ๋ฐ˜ํ™˜ 

location.reload()  : ๋ธŒ๋ผ์šฐ์ € ์ƒˆ๋กœ๊ณ ์นจ 

 

 

4๏ธโƒฃ history ๊ฐ์ฒด 

history ๊ฐ์ฒด๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ๋ฐฉ๋ฌธํ•œ ์‚ฌ์ดํŠธ์˜ ๊ธฐ๋ก์„ ๋‚จ๊ธฐ๊ณ  ์ด์ „ ๋ฐฉ๋ฌธ ์‚ฌ์ดํŠธ์™€ ๋‹ค์Œ ๋ฐฉ๋ฌธ ์‚ฌ์ดํŠธ๋กœ ๋‹ค์‹œ ๋Œ์•„๊ฐˆ ์ˆ˜ ์žˆ๋Š” ์†์„ฑ๊ณผ ๋ฉ”์„œ๋“œ ์ œ๊ณต 

 

- history ๊ฐ์ฒด์˜ ์†์„ฑ ์ข…๋ฅ˜ 

history.back  : ์ด์ „ ๋ฐฉ๋ฌธ ์‚ฌ์ดํŠธ๋กœ ์ด๋™ํ•œ๋‹ค. 

history.forward : ๋‹ค์Œ ๋ฐฉ๋ฌธ ์‚ฌ์ดํŠธ๋กœ ์ด๋™ํ•œ๋‹ค.  

history.go(์ด๋™์ˆซ์ž) : ์ด๋™ ์ˆซ์ž์— -2 ๋ฅผ ์ž…๋ ฅํ•˜๋ฉด 2๋‹จ๊ณ„ ์ด์ „์˜ ๋ฐฉ๋ฌธ์‚ฌ์ดํŠธ๋กœ ์ด๋™ 

history.length  : ๋ฐฉ๋ฌธ ๊ธฐ๋ก์— ์ €์žฅ๋œ ๋ชฉ๋ก์˜ ๊ฐœ์ˆ˜ ๋ฐ˜ํ™˜ 

 

 

5๏ธโƒฃ navigator ๊ฐ์ฒด 

navigator ๊ฐ์ฒด๋Š” ํ˜„์žฌ ๋ฐฉ๋ฌธ์ž๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ๋ธŒ๋ผ์šฐ์ €์™€ ์šด์˜์ฒด์ œ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ฐ์ฒด์ด๋‹ค.

 

- navigator ๊ฐ์ฒด ์†์„ฑ๊ณผ ์ข…๋ฅ˜ 

navigator.appCodeName : ํ˜„์žฌ ๋ธŒ๋ผ์šฐ์ € ์ฝ”๋“œ๋ช…์„ ๋ฐ˜ํ™˜ 

navigator.appName : ํ˜„์žฌ ๋ธŒ๋ผ์šฐ์ € ์ด๋ฆ„์„ ๋ฐ˜ํ™˜ 

navigator.appVersion : ํ˜„์žฌ ๋ธŒ๋ผ์šฐ์ € ๋ฒ„์ „ ์ •๋ณด๋ฅผ ๋ฐ˜ํ™˜ 

navigator.language : ํ˜„์žฌ ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š” ์–ธ์–ด ๋ฐ˜ํ™˜ 

navigator.product : ํ˜„์žฌ ๋ธŒ๋ž‘์คฎ ์—”์ง„ ์ด๋ฆ„ ๋ฐ˜ํ™˜ 

navigator.platform : ํ˜„์žฌ ์ปดํ“จํ„ฐ์˜ ์šด์˜์ฒด์ œ ์ •๋ณด ์ œ๊ณต 

navigator.onLine : ์˜จ๋ผ์ธ ์ƒํƒœ ์—ฌ๋ถ€์— ๋Œ€ํ•œ ์ •๋ณด ์ œ๊ณต 

navigator.userAgent  : ๋ธŒ๋ผ์šฐ์ €์™€ ์šด์˜์ฒด์ œ์˜ ์ข…ํ•ฉ ์ •๋ณด ์ œ๊ณต 

 

* ์—ฐ์Šต๋ฌธ์ œ 

๋ธŒ๋ผ์šฐ์ € ๊ฐ์ฒด ๋ชจ๋ธ ์‚ฌ์šฉํ•ด ์šด์˜์ฒด์ œ์™€ ์Šคํฌ๋ฆฐ ์ •๋ณด ์–ป๊ธฐ 

 

 

<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset = "UTF-8">
<title> ์šด์˜์ฒด์ œ ๋ฐ ์Šคํฌ๋ฆฐ ์ •๋ณด </title>
<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no">
<script>
 var info = navigator.userAgent.toLowerCase();
 var oslmg = null;

    if(info.indexOf("windows") >= 0) {
        oslmg = "windows.png";
    }else if(info.indexOf("matchintosh") >= 0) {
        oslmg = "machintosh.png";
    }else if (info.indexOf("iphone") >= 0) {
        oslmg = "iphone.png";
    }else if(info.indexOf("android") >= 0) {
        oslmg = "android.png";
    }

    document.write("<img src=\"images/" + oslmg + "\">", "<br>");

    var scr = screen;
    var sc_w = screen.width;
    var sc_h = screen.height;

    document.write("๋ชจ๋‹ˆํ„ฐ ํ•ด์ƒ๋„ ๋„ˆ๋น„ : "+ sc_w + "px", "<br>");
    document.write("๋ชจ๋‹ˆํ„ฐ ํ•ด์ƒ๋„ ๋†’์ด : " + sc_h  + "px" , "<br>");
</script>
</head>
<body>
</body>
</html>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

728x90