whatisthis?

javaScript. Window ๊ฐ์ฒด ๋ณธ๋ฌธ

WEB STUDY/JAVASCRIPT

javaScript. Window ๊ฐ์ฒด

thisisyjin 2022. 1. 10. 11:07

๐Ÿ’ก Window ๊ฐ์ฒด๋ž€?

- ๋ธŒ๋ผ์šฐ์ €์˜ ์š”์†Œ๋“ค๊ณผ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์—”์ง„, ๊ทธ๋ฆฌ๊ณ  ๋ชจ๋“  ๋ณ€์ˆ˜๋ฅผ ๋‹ด๊ณ  ์žˆ๋Š” ๊ฐ์ฒด

- ๋ธŒ๋ผ์šฐ์ € ์ „์ฒด๋ฅผ ๋‹ด๋‹นํ•˜๋Š” ๊ฒƒ์ด Window ๊ฐ์ฒด (cf. Document ๊ฐ์ฒด = ์›น์‚ฌ์ดํŠธ๋งŒ ๋‹ด๋‹น)

- Document ๊ฐ์ฒด๋„ Window ๊ฐ์ฒด ์•ˆ์— ๋“ค์–ด์žˆ์Œ.

 

window๊ฐ์ฒด ์•„๋ž˜์—๋Š” ๋งŽ์€ ์†์„ฑ(property)๊ณผ ๋ฉ”์†Œ๋“œ(method)๊ฐ€ ์กด์žฌํ•จ.๊ทธ์ค‘์—์„œ๋„ ๋Œ€ํ‘œ์ ์ธ ๊ฒƒ์„ ์‚ดํŽด๋ณด๋ฉด

 

* ๊ฐ์ฒด : screen , location ,  history , document ๊ฐ์ฒด* ๋ฉ”์†Œ๋“œ : parseInt , isNaN ๋“ฑ

 

 

์‚ฌ์‹ค parseInt๊ฐ™์€ ๊ฒฝ์šฐ์—๋„ window.parseInt()๋ผ๊ณ  ์ž‘์„ฑํ•˜์ง€ ์•Š๊ณ  parseInt()๋ผ๊ณ ๋งŒ ์ž‘์„ฑํ•œ๋‹ค.Window ๊ฐ์ฒด๋Š” ๋ชจ๋“  ๊ฐ์ฒด์˜ ์กฐ์ƒ, ์ฆ‰ ์ „์—ญ๊ฐ์ฒด(global object)์ด๋‹ค.๋ชจ๋“  ๊ฐ์ฒด๋ฅผ ๋‹ค ํฌํ•จํ•˜๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— window๋Š” ๊ทธ๋ƒฅ ์ƒ๋žต ๊ฐ€๋Šฅ.

 

window ๊ฐ์ฒด ์•„๋ž˜๋ฅผ ๋ณด๋ฉด ์ž๋ฃŒํ˜•(String, Boolean, Number, Function, Array)์ด ๋‹ค ๋“ค์–ด์žˆ๋‹ค.๊ฒŒ๋‹ค๊ฐ€ ์„ ์–ธํ•œ ๋ณ€์ˆ˜๋“ค๋„ ๋ชจ๋‘ window ๊ฐ์ฒด ๋‚ด์— ์ €์žฅ๋œ๋‹ค.( โ— ๋‹จ, ํ•จ์ˆ˜ ๋‚ด์—์„œ ์„ ์–ธํ•œ ๋ณ€์ˆ˜๋Š” ์•„๋‹˜ )

 

 

๋”ฐ๋ผ์„œ, ์ „์—ญ ๋ณ€์ˆ˜๊ฐ€ ๋ฌด์—‡์ธ์ง€ ์‚ดํŽด๋ณด๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

var hello = 'hello?';

window.hello;         // 'hello?'

** ์ฃผ์˜ > ์œ„ ์˜ˆ์ œ๋Š” var๋งŒ ๊ฐ€๋Šฅํ•˜๋‹ค. / ์ฆ‰, let์ด๋‚˜ const๋Š” window๊ฐ์ฒด์— ์ €์žฅ๋˜๋Š” ์ „์—ญ๋ณ€์ˆ˜๊ฐ€ โŒ

 

์ „์—ญ๋ณ€์ˆ˜๋Š” ์–ด๋””์—์„œ๋‚˜ ์“ธ ์ˆ˜ ์žˆ๊ณ ,

๊ทธ์— ๋ฐ˜๋Œ€๋˜๋Š” ๊ฐœ๋…์ธ ์ง€์—ญ๋ณ€์ˆ˜๋Š” ๊ทธ ํ•จ์ˆ˜ ์•ˆ์—์„œ๋งŒ ์“ธ ์ˆ˜ ์žˆ๋‹ค.

 


๐Ÿ’ก window ๊ฐ์ฒด์˜ ๋Œ€ํ‘œ์ ์ธ ๋ฉ”์†Œ๋“œ๋“ค 

-> window.๋Š” ์ƒ๋žตํ•ด๋„ ์ข‹์œผ๋‚˜, ๋‹ค๋ฅธ ํ•จ์ˆ˜์™€ ํ—ท๊ฐˆ๋ฆด ์ˆ˜ ์žˆ์œผ๋‹ˆ ๋ถ™์—ฌ์ค˜๋„ ๊ดœ์ฐฎ์Œ. 

 

๐Ÿ“ window.close()

- ํ˜„์žฌ ์ฐฝ์„ ๋‹ซ์Œ. 

 

๐Ÿ“ window.open()

- ์ƒˆ ์ฐฝ์„ ์—ผ. (์ƒˆํƒญ / ํ˜„์žฌํƒญ / ํŒ์—…์ฐฝ *width,height์„ค์ •*)

open('https://mywebproject.tistory.com')  // ์ƒˆ ํƒญ์—์„œ ์—ด๊ธฐ
open('https://mywebproject.tistory.com', '_self')  // ํ˜„์žฌ ํƒญ์—์„œ ์—ด๊ธฐ
open('','','width=200,height=200')  // ๊ฐ€๋กœ์„ธ๋กœ 200px์˜ ํŒ์—…์ฐฝ

+) document.write๋กœ ์ƒˆ ์ฐฝ์˜ ๋‚ด์šฉ์„ ๋ณ€๊ฒฝํ•  ์ˆ˜๋„ ์žˆ์Œ.

var popup = window.open('', '', 'width=200,height=200');
popup.document.write('์•ˆ๋…•ํ•˜์„ธ์š”');

++) ํŒ์—…์ฐฝ์—์„œ ์›๋ž˜ ํƒญ์— ์ ‘๊ทผ = opener ๊ฐ์ฒด ์‚ฌ์šฉ

 

๐Ÿ“ window.encodeURI() / decodeURI()

- ์ฃผ์†Œ์— ํ•œ๊ธ€์ด ๋“ค์–ด๊ฐ€๋ฉด %EC%9E%90%EB%B0%94%EC%8A%A4์™€ ๊ฐ™์ด ์ด์ƒํ•œ ๋ฌธ์ž์—ด๋กœ ๋ฐ”๋€œ.

- ํ•œ๊ธ€ -> ์™ธ๊ณ„์–ด : encodeURI(ํ•œ๊ธ€)- ์™ธ๊ณ„์–ด -> ํ•œ๊ธ€ : decodeURI(์™ธ๊ณ„์–ด)

 

๐Ÿ“ window.setTimeout(ํ•จ์ˆ˜, ๋ฐ€๋ฆฌ์ดˆ)   :  ์ง€์ •ํ•œ ์ดˆ ๋’ค์— ์‹คํ–‰

๐Ÿ“ window.setInterval(ํ•จ์ˆ˜, ๋ฐ€๋ฆฌ์ดˆ)   :  ์ง€์ •ํ•œ ์ดˆ๋งˆ๋‹ค ๋ฐ˜๋ณต

 

๐Ÿ“window.getComputedStyle(ํƒœ๊ทธ๋ช…)

- ํƒœ๊ทธ์— ํ˜„์žฌ ์ ์šฉ๋œ CSS ์†์„ฑ๊ฐ’์„ ์•Œ ์ˆ˜ ์žˆ์Œ. 

console.log(getComputedStyle(document.getElementById('app-root')));

์ด๋Ÿฐ์‹์œผ๋กœ document๊ฐ์ฒด๋กœ getElementBy__ ํ•˜๊ฑฐ๋‚˜ querySelector ํ•˜๋ฉด ๋œ๋‹ค.

 


REFERENCE

 

 

 

(JavaScript) Window ๊ฐ์ฒด์™€ BOM

์ด๋ฒˆ ์‹œ๊ฐ„์—๋Š” Window ๊ฐ์ฒด์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. Window ๊ฐ์ฒด๊ฐ€ ๋ญ๋ƒ๊ณ ์š”? ๋ฐ”๋กœ ๋ธŒ๋ผ์šฐ์ €์˜ ์š”์†Œ๋“ค๊ณผ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์—”์ง„, ๊ทธ๋ฆฌ๊ณ  ๋ชจ๋“  ๋ณ€์ˆ˜๋ฅผ ๋‹ด๊ณ  ์žˆ๋Š” ๊ฐ์ฒด์ž…๋‹ˆ๋‹ค.  Window ์ธํ„ฐ๋„ท ๋ธŒ๋ผ์šฐ์ €๋ฅผ

www.zerocho.com

์ด ํฌ์ŠคํŒ…์€ zerocho๋‹˜์˜ javascript ๊ฐ•์˜๋ฅผ ๋ณด๊ณ  ์ž‘์„ฑํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค.

๊ณต๋ถ€+๊ธฐ๋ก ์šฉ์œผ๋กœ ์ž‘์„ฑํ•œ ๊ฒƒ์ด๋ฉฐ, ์ž์„ธํ•œ ๊ฒƒ์€ ์œ„ ํฌ์ŠคํŒ…์„ ์ฐธ๊ณ ํ•˜์„ธ์š”! 

 

 

'WEB STUDY > JAVASCRIPT' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

javaScript. ํ•จ์ˆ˜ ์Šค์ฝ”ํ”„(scope)  (0) 2022.01.10
javaScript. BOM  (0) 2022.01.10
javaScript. call() / bind() / apply()  (0) 2022.01.09
๐Ÿ“ javaScript. String Method๋ชฉ์ฐจ  (0) 2022.01.04
javaScript. indexOf()๋ฌธ  (0) 2022.01.04