๊ด€๋ฆฌ ๋ฉ”๋‰ด

Daehyunii's Dev-blog

1-01 ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ž‘์„ฑ์œ„์น˜ ~ 1-06 64๋น„ํŠธ๋ถ€๋™์†Œ์ˆ˜์  ๋ณธ๋ฌธ

๐Ÿ“š Language & CS knowledge/JavaScript (๊ธฐ์ดˆ)

1-01 ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ž‘์„ฑ์œ„์น˜ ~ 1-06 64๋น„ํŠธ๋ถ€๋™์†Œ์ˆ˜์ 

Daehyunii 2022. 6. 16. 19:14

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ๊ณต๋ถ€ํ•˜๊ฒŒ ์•ž์„œ ' ๋ชจ๋˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ Deep Dive ' ์ฑ…๊ณผ inflearn ์‚ฌ์ดํŠธ๋ฅผ ํ†ตํ•ด ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ฐ•์˜ ์˜์ƒ์„ ์‹ ์ฒญํ–ˆ์Šต๋‹ˆ๋‹ค.

์šฐ์„  ํŒŒ์ด์ฌ๊ณผ๋Š” ๋‹ค๋ฅด๊ฒŒ ์ด๋ฒˆ์—๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ฐ•์˜ ์˜์ƒ์„ ๋จผ์ € 1ํšŒ๋…์„ ํ•œ ํ›„์— ์ฑ…๊ณผ ๊ฐ•์˜๋ฅผ ๋ณ‘ํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ ๊ณ„ํš์„ ์„ธ์› ์Šต๋‹ˆ๋‹ค.

'๋ชจ๋˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ Deep Dive' ์ฑ…์„ ์ƒ๋‹น ๋ถ€๋ถ„ ์Šต๋“ํ•˜๊ฒŒ ๋œ๋‹ค๋ฉด ์ „๋ฐ˜์ ์ธ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์ง€์‹์ด ๋งŽ์ด ์Œ“์ผ ๊ฒƒ์ด๋ผ๋Š” ์ด์•ผ๊ธฐ๋ฅผ ๋“ค์—ˆ๊ธฐ์—

'์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ž€ ๋ฌด์—‡์ธ์ง€' ๊ฐ•์˜๋ฅผ ๋น ๋ฅด๊ฒŒ 1ํšŒ๋… ๋“ฃ๊ณ , ์ฑ…์œผ๋กœ ๋„˜์–ด๊ฐ€๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

 

*์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๊ฐ€ ๋ฌด์—‡์ธ์ง€ ์ œ๋Œ€๋กœ ์ดํ•ดํ•˜์ง€ ๋ชปํ•œ ์ƒํƒœ์—์„œ ๊ฐ•์˜๋ฅผ ์ง„ํ–‰ํ•˜๋‹ค ๋ณด๋‹ˆ, ์ œ๊ฐ€ ์ž‘์„ฑํ•œ ๋‚ด์šฉ์ด ์ •ํ™•ํ•˜์ง€ ์•Š๊ฑฐ๋‚˜

ํ‹€๋ฆฐ ๋ถ€๋ถ„์ด ์žˆ์„ ์ˆ˜๋„ ์žˆ์œผ๋ฉฐ, ๋ฐฐ์šด ๋‚ด์šฉ๋“ค์„ ์ค‘์‹ฌ์œผ๋กœ ๊ธฐ๋กํ•˜๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค.

 

1-01 ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ž‘์„ฑ ์œ„์น˜

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ž‘์„ฑ์œ„์น˜

์šฐ์„ , html์˜ ๊ตฌ์กฐ์— ๋Œ€ํ•ด์„œ ๋ฐฐ์› ์Šต๋‹ˆ๋‹ค.

html์˜ ๊ตฌ์กฐ๋Š” <html><head></head><body></body></html>์˜ ๊ตฌ์กฐ๋กœ ๋Œ€๋žต์ ์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๊ณ  <body>์™€ <head>์‚ฌ์ด์—

์ฝ”๋“œ๋‚ด์šฉ์„ ์ž…๋ ฅ ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ๋ฐฐ์› ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํŒŒ์ผ(?)์„ ๋ณ„๋„๋กœ ๋งŒ๋“ค์–ด html์— ๋„ฃ์„ ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ๋„ ๋ฐฐ์› ์Šต๋‹ˆ๋‹ค.

๋ณธ ๋‚ด์šฉ์„ ๋ฐฐ์šฐ๋ฉด์„œ html๊ณผ JavaScript์˜ ๊ด€๊ณ„๊ฐ€ ๊ถ๊ธˆํ–ˆ๊ณ , ์ •ํ™•ํ•œ ๊ตฌ์กฐ๋ฅผ ์ดํ•ดํ•˜๊ณ  ์‹ถ์—ˆ์œผ๋‚˜ ์ง€๊ธˆ ๋‹จ๊ณ„์—์„œ๋Š” ์šฐ์„  ๋น ๋ฅด๊ฒŒ 1ํšŒ๋…์„ ๋ชฉํ‘œ๋กœ ๋‘์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ž์„ธํ•œ ๊ถ๊ธˆ์ฆ์€ ๋‹ค์‹œ ๊ณต๋ถ€ํ•˜๊ธฐ๋กœ ํ•˜๊ณ  ๊ฐ•์˜๋ฅผ ๊ณ„์† ์ด์–ด ๋‚˜๊ฐ”์Šต๋‹ˆ๋‹ค.

 

 

1-02 ์ฝ˜์†” 

๊ฐœ๋ฐœ์ž ๋„๊ตฌ๋Š” ํฌ๋กฌ์„ ํ†ตํ•ด console.log()๋ฅผ ํ™œ์šฉ

(ํŒŒ์ด์ฌ์— ๋น„๊ตํ•ด ๋ณด์ž๋ฉด print()์™€ ๊ฐ™์€ ์—ญํ• ์ด์ง€ ์•Š์„๊นŒ ํ•˜๊ณ  ์กฐ์‹ฌ์Šค๋Ÿฝ๊ฒŒ ๋น„๊ตํ•ด๊ฐ€๋ฉฐ ๊ณต๋ถ€ํ–ˆ์Šต๋‹ˆ๋‹ค.)

๊ฐ•์˜์˜ ๋‚ด์šฉ์ƒ ์ž์„ธํ•œ ์„ค๋ช…์€ ์—†์—ˆ์ง€๋งŒ, document.write()๋ฅผ ํ†ตํ•ด ์ž‘์„ฑํ•œ ๋‚ด์šฉ์ด ํ™”๋ฉด์— ์ถœ๋ ฅ๋˜๋Š” ๊ฒƒ์„ ํ™•์ธ

 

 

1-03 ์ฃผ์„์ฒ˜๋ฆฌ

์ฃผ์„ ์ฒ˜๋ฆฌ๋Š” ํŒŒ์ด์ฌ๊ณผ ๊ฐ™์€ ๊ฐœ๋…์ด๊ธฐ ๋•Œ๋ฌธ์— ํฌ๊ฒŒ ์‰ฝ๊ฒŒ ๋ฐ›์•„ ๋“ค์ž„

ํŒŒ์ด์ฌ - # 

html - // 

์—ฌ๋Ÿฌ ๋ฌธ์žฅ ์ฃผ์„ ์ฒ˜๋ฆฌ - /*  ์—ฌ๋Ÿฌ ์ค„์˜ ๋‚ด์šฉ ์ž…๋ ฅ */

 

 

1-04 ๋ณ€์ˆ˜์„ ์–ธ์ž

var : ๋™์ผํ•œ ์ด๋ฆ„์œผ๋กœ ๋ณ€์ˆ˜๋ฅผ ์žฌ์„ ์–ธ ํ•˜๋Š”๊ฒƒ ๊ฐ€๋Šฅ

  ์„ ์–ธ๋œ ๋ณ€์ˆ˜์— ๊ฐ’์„ ์žฌํ• ๋‹น ํ•˜๋Š”๊ฒƒ ๊ฐ€๋Šฅ

let : ๋™์ผํ•œ ์ด๋ฆ„์œผ๋กœ ๋ณ€์ˆ˜๋ฅผ ์žฌ์„ ์–ธ ํ•˜๋Š”๊ฒƒ ๋ถˆ๊ฐ€๋Šฅ

  ์„ ์–ธ๋œ ๋ณ€์ˆ˜์— ๊ฐ’์„ ์žฌํ• ๋‹น ํ•˜๋Š”๊ฒƒ ๊ฐ€๋Šฅ

const : ๋™์ผํ•œ ์ด๋ฆ„์œผ๋กœ ๋ณ€์ˆ˜๋ฅผ ์žฌ์„ ์–ธ ํ•˜๋Š”๊ฒƒ ๋ถˆ๊ฐ€๋Šฅ

     ์„ ์–ธ๋œ ๋ณ€์ˆ˜์— ๊ฐ’์„ ์žฌํ• ๋‹น ํ•˜๋Š”๊ฒƒ ๋ถˆ๊ฐ€๋Šฅ

 

 

1-05 ๋ฐ์ดํ„ฐํƒ€์ž…

1. String : ๋ฌธ์ž์—ด, " "๋ฅผ ํ™œ์šฉ

 

2. Number : ์ˆซ์ž

 

3. undefined : ์—๋Ÿฌ๊ฐ€ ์•„๋‹Œ ํ•˜๋‚˜์˜ ๋ฐ์ดํ„ฐ ํƒ€์ž…์œผ๋กœ ๋ด„, ์กฐ๊ฑด๋ฌธ์—์„œ ํ™œ์šฉ ๊ฐ€๋Šฅํ•จ

 

4. Null : ์—๋Ÿฌ๊ฐ€ ์•„๋‹Œ ํ•˜๋‚˜์˜ ๋ฐ์ดํ„ฐ ํƒ€์ž…์œผ๋กœ ๋ด„, ์กฐ๊ฑด๋ฌธ์—์„œ ํ™œ์šฉ ๊ฐ€๋Šฅํ•จ

 

5. ์˜ค๋ธŒ์ ํŠธ : ํ‚ค์™€ ๋ฐธ๋ฅ˜๊ฐ’์„ ๊ฐ€์ง€๋Š” ๋ฐ์ดํ„ฐ, { }๋ฅผ ํ†ตํ•ด ์„ ์–ธ(ํŒŒ์ด์ฌ์˜ ๋”•์…”๋„ˆ๋ฆฌ์™€ ์œ ์‚ฌ-์‚ฌ๊ฒฌ), 

ex)var person = {}; ๋ผ ์„ ์–ธ ํ–ˆ์„๋•Œ, person.firstName = "์ด๋ฆ„" ๊ณผ person[firstName] = "์ด๋ฆ„" ๋‘ ๊ฐ€์ง€ ๋ฐฉ์‹์„ ํ™œ์šฉ ํ•  ์ˆ˜ ์žˆ์Œ

ํŒŒ์ด์ฌ๊ณผ ๋™์ผํ•˜๊ฒŒ ํ‚ค ๊ฐ’์ด ์กด์žฌํ•˜๋Š” ์ƒํƒœ๋กœ ๋ฐธ๋ฅ˜ ๊ฐ’์„ ์ž…๋ ฅํ•˜๋ฉด ๋ฐธ๋ฅ˜ ๊ฐ’์ด ๋ณ€๊ฒฝ๋˜๊ณ , ์—†๋Š” ํ‚ค๊ฐ’์„ ์ž…๋ ฅํ•œ ํ›„ ๋ฐธ๋ฅ˜ ๊ฐ’์„ ์ž…๋ ฅํ•˜๋ฉด ์ƒˆ๋กญ๊ฒŒ ํ‚ค์™€ ๋ฐธ๋ฅ˜ ๊ฐ’์ด ์˜ค๋ธŒ์ ํŠธ์— ์ถ”๊ฐ€ ๋˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•จ

 

6. ๋ฐฐ์—ด(Array) : ์—ฌ๋Ÿฌ๊ฐœ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ง€๋Š” ๋ฐ์ดํ„ฐ, [ ]๋ฅผ ํ†ตํ•ด ์„ ์–ธ(ํŒŒ์ด์ฌ์˜ ๋ฆฌ์ŠคํŠธ์™€ ์œ ์‚ฌ-์‚ฌ๊ฒฌ),

๋ฐฐ์—ด ๋‚ด๋ถ€์—๋Š” ๋ฌธ์ž์—ด, ์ˆซ์ž, undefined, boolean ๋“ฑ ๋ชจ๋“  ๋ฐ์ดํ„ฐ๊ฐ€ ๋“ค์–ด ์˜ฌ ์ˆ˜ ์žˆ์Œ

๋ฐฐ์—ด ๋‚ด ๋ฐ์ดํ„ฐ ์ถ”๊ฐ€ - .push()

๋ฐฐ์—ด ๋‚ด ๋ฐ์ดํ„ฐ ์น˜ํ™˜ - ๋ฐฐ์—ด๋ช…[์ธ๋ฑ์Šค๋ฒˆํ˜ธ] = ๋ณ€๊ฒฝ ํ•  ๋ฐ์ดํ„ฐ

๋ฐฐ์—ด ๋‚ด element์ˆ˜ ํ™•์ธ - ๋ฐฐ์—ด๋ช….length

 

7. Booloean : 'true','false' ๊ฐ’ ๋งŒ์„ ๊ฐ€์ง€๋Š” ๋ฐ์ดํ„ฐ ํƒ€์ž… 

 

8.๋ฐ์ดํ„ฐ ํƒ€์ž… ์•Œ์•„๋ณด๊ธฐ : typeof ๋ฐ์ดํ„ฐ๋ช…

๋ฐฐ์—ด๋„ ์˜ค๋ธŒ์ ํŠธ ํƒ€์ž…์œผ๋กœ ๋‚˜์˜ค๋Š” ์  ์œ ์˜!

 

 

1-06 64๋น„ํŠธ๋ถ€๋™์†Œ์ˆ˜์ 

64๋ถ€๋™์†Œ์ˆ˜์  ๊ฐ•์˜ ๋“ค์œผ๋ฉฐ ์ •๋ฆฌํ•œ ๋‚ด์šฉ

๊ฐ•์˜๋ฅผ ๋“ค์œผ๋ฉด์„œ๋„ ์ •ํ™•ํ•œ ๊ฐœ๋…์„ ์ดํ•ด ํ•˜์ง€ ๋ชปํ–ˆ์Œ. 

์™„๊ฐ• ํ›„ ๋‹ค์‹œ ์ฑ…์„ ํ†ตํ•ด ์ž์„ธํ•œ ์„ค๋ช…์„ ๋“ค์–ด๋ณด์•„์•ผ ํ•  ๊ฒƒ ๊ฐ™์Œ

 

์˜ค๋Š˜์„ ๋งˆ๋ฌด๋ฆฌ ํ•˜๋ฉฐ :

JavaScript๋ผ๋Š” ์ƒˆ๋กœ์šด ์–ธ์–ด๋ฅผ ๋ฐฐ์šด๋‹ค๊ณ  ํ•˜๋‹ˆ, ๊ฑฑ์ •๋„ ๋งŽ์ด ๋˜๊ณ  ๋ถˆ์•ˆํ•œ ๋งˆ์Œ๋„ ์—†์ง€ ์•Š์•„ ์žˆ์—ˆ์ง€๋งŒ ํŒŒ์ด์ฌ์„ ํ†ตํ•ด ์–ธ์–ด๊ฐ€ ๋ฌด์—‡์ธ์ง€ ์–ด๋Š์ •๋„ ๊ฐ์„ ์žก๊ณ  ๋“ค์–ด์˜ค๋‹ˆ, ๋น„๊ตํ•ด ๊ฐ€๋ฉฐ ๋ณผ ์ˆ˜ ์žˆ์–ด ์ดํ•ดํ•˜๊ธฐ ์‰ฌ์šด ๋ถ€๋ถ„๋„ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค๋งŒ ๋ฏธ์„ธํ•˜๊ฒŒ ์กฐ๊ธˆ์”ฉ ๋‹ค๋ฅธ ๋ถ€๋ถ„๋“ค์ด ๋งŽ๋‹ค๋Š”๊ฒŒ ๋Š๊ปด์ ธ ์˜คํžˆ๋ ค ํ—ท๊ฐˆ๋ฆฌ์ง€๋Š” ์•Š์„์ง€ ๊ฑฑ์ •์ด ๋˜๋Š” ๋ถ€๋ถ„๋„ ์žˆ์Šต๋‹ˆ๋‹ค.