21.06.21 ๐Ÿ‘จโ€๐Ÿ’ป - HTML, JS

3826 ๋‹จ์–ด objectjsTILTIL

TIL - 21.06.21 ๐Ÿ‘จโ€๐Ÿ’ป

์ฝ”ํ”Œ๋ฆฟ ๊ณ„์‚ฐ๊ธฐ & HTML, CSS ๋ณต์Šต

id์™€ class

id๋Š” ํŠน์ •์š”์†Œ์— ๋„ค์ด๋ฐ
class๋Š” ์Šคํƒ€์ผ์˜ ๋ถ„๋ฅ˜

class๋Š” ์š”์†Œ๋Š” ์—ฌ๋Ÿฌ๊ฐœ์˜ ๊ฐ’์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š”๋ฐ, ์ด ๊ฐ’๋“ค์—์„œ ์„ ์–ธํ•œ ๊ฒƒ์ด ๊ฒน์น  ๊ฒฝ์šฐ์— css ํŒŒ์ผ์—์„œ ๋‚˜์ค‘์— ์ ์šฉ๋˜๋Š” ๊ฐ’์ด ์ ์šฉ๋œ๋‹ค.

<h1 class='header section'>I'm Sunghoon</h1>
.section {
	background-color: red;
}
.header { โ€˜ํ‚ค(key): ๊ฐ’(value)โ€™ ์Œ์œผ๋กœ ๊ตฌ์„ฑ๋œ ํ”„๋กœํผํ‹ฐ(property)
	background-color: blue;
}

์ƒ๊ธฐ ์ฝ”๋“œ๊ฐ€ ์žˆ์„ ๊ฒฝ์šฐ ํด๋ž˜์Šค ์š”์†Œ์˜ ๊ฐ’์˜ ์ˆœ์„œ์— ๋”ฐ๋ผ header -> section ์œผ๋กœ ์ ์šฉ๋˜์„œ ๋ฐฐ๊ฒฝ์ƒ‰์ด ๋นจ๊ฐ„ ์ƒ‰์ด ๋˜๋Š” ๊ฒƒ์ด ์•„๋‹Œ, css ํŒŒ์ผ ์† ์ˆœ์„œ์— ๋”ฐ๋ผ header๊ฐ€ ์ตœ์ข…์ ์œผ๋กœ ๋ฐ˜์˜๋˜์–ด ํŒŒ๋ž€ ์ƒ‰์ด ๋œ๋‹ค.

๊ฐ์ฒด ์ถ”๊ฐ€๋กœ ์•Œ์•„๋‘˜ ์ 

  • ๊ฐ์ฒด์˜ ํ”„๋กœํผํ‹ฐ๋Š” ์ขŒ์ธก์˜ key, ์šฐ์ธก์˜ value๊ฐ€ ํ•ฉ์ณ์ ธ ํ•˜๋‚˜์˜ property๊ฐ€ ๋œ๋‹ค.
  • ๋นˆ ๊ฐ์ฒด ์ƒ์„ฑ๋ฒ•์€ let objectName = {}; ํ˜น์€ let objectName = new Object(); ์ด๋‹ค.
  • ์  ํ‘œ๊ธฐ๋ฒ• ๋ณด๋‹ค ๋Œ€๊ด„ํ˜ธ ํ‘œ๊ธฐ๋ฒ•์ด ์ ๊ธฐ ๊ท€์ฐฎ์€๊ฑด ์‚ฌ์‹ค์ด์ง€๋งŒ ์˜ค๋ฅ˜๋‚  ๊ฐ€๋Šฅ์„ฑ์ด ์ ์œผ๋‹ˆ ์›ฌ๋งŒํ•˜๋ฉด ๋Œ€๊ด„ํ˜ธ ํ‘œ๊ธฐ๋ฒ•์œผ๋กœ ์ž‘์„ฑํ•˜์ž.
  • ๋งˆ์ง€๋ง‰ ํ”„๋กœํผํ‹ฐ ๋์— ์‰ผํ‘œ๋ฅผ ์ฐ์–ด๋‘๋ฉด ํ”„๋กœํผํ‹ฐ ์ถ”๊ฐ€, ์‚ญ์ œ๊ฐ€ ์ˆ˜์›”ํ•˜๋‹ˆ ๋์— ์‰ผํ‘œ๋ฅผ ์ฐ์–ด๋‘๋Š” ์Šต๊ด€์„ ๋“ค์ด์ž.
  • const๋กœ ์„ ์–ธ๋œ ๊ฐ์ฒด์˜ ํ”„๋กœํผํ‹ฐ๋Š” ์ˆ˜์ •๋  ์ˆ˜ ์žˆ๋‹ค. ๋‹ค๋งŒ var๋กœ ์„ ์–ธํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ์€ ๋‹น์—ฐํžˆ ์•ˆ๋œ๋‹ค.
  • ๊ฐ์ฒด ํ”„๋กœํผํ‹ฐ์˜ ํ‚ค ๊ฐ’์œผ๋กœ ๋Œ€๊ด„ํ˜ธ์— ์” ํ‚ค๊ฐ€ ์˜ฌ ์ˆ˜ ์žˆ๋Š”๋ฐ ์ด๋Š” ์™ธ๋ถ€๋กœ ํ‚ค ๊ฐ’์„ ๋ฐ›์•„ ์˜ฌ๋•Œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์„ ์–ธ๋˜์ง€ ์•Š์€ ๊ฐ์ฒด์˜ ๊ฐ’์„ ํ˜ธ์ถœํ• ๋•Œ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹Œ undefined๋ฅผ ๊ฐ’์œผ๋กœ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
  • ๊ฐ์ฒด์˜ ํ”„๋กœํผํ‹ฐ๋ฅผ ์‚ญ์ œํ• ๋•Œ๋Š” delete objectName.key ๋ฅผ ์ด์šฉํ•œ๋‹ค.

in ์—ฐ์‚ฐ์ž

์‚ฌ์šฉ๋ฒ•์€ 'key' in objectName.
key ์ž๋ฆฌ์—๋Š” ํ”„๋กœํผํ‹ฐ์˜ ํ‚ค๊ฐ€ ์™€์•ผํ•˜๊ณ  objectName์ž๋ฆฌ์—๋Š” ๋ฐ˜๋“œ์‹œ ๊ฐ์ฒด๊ฐ€ ์™€์•ผํ•œ๋‹ค.
objectName ์•ˆ์— key๋ผ๋Š” ํ‚ค๋ฅผ ๊ฐ€์ง„ ํ”„๋กœํผํ‹ฐ๊ฐ€ ์žˆ์œผ๋ฉด true ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

๊ฐ์ฒด์˜ ์ •๋ ฌ ๋ฐฉ์‹

์ •์ˆ˜ ํ”„๋กœํผํ‹ฐ๋Š” ์ž‘์€ ์ˆ˜ ๋ถ€ํ„ฐ ์ˆœ์„œ๋Œ€๋กœ, ๊ทธ ์™ธ์˜ ๋‚˜๋จธ์ง€ ํ”„๋กœํผํ‹ฐ๋Š” ์ž…๋ ฅ๋œ ์ˆœ์„œ๋Œ€๋กœ ์ถœ๋ ฅ๋œ๋‹ค.

์ •์ˆ˜ ํ”„๋กœํผํ‹ฐ = ๊ฐ’์„ ์ •์ˆ˜๋กœ ๋ฐ”๊พธ์—ˆ์„๋•Œ์™€ ๋ฐ”๊พธ์ง€ ์ „๊ณผ์˜ ๊ฐ’์ด ๊ฐ™์œผ๋ฉด ์ •์ˆ˜ ํ”„๋กœํผํ‹ฐ์ด๋‹ค.

GOOD ๐Ÿ˜‰

์ƒˆ๋กœ์šด ํŽ˜์–ด ๋ถ„์„ ๋งŒ๋‚ฌ๋‹ค.
๋ง์ˆ˜๊ฐ€ ์กฐ๊ธˆ ์ ์œผ์‹  ๋ถ„์ธ๊ฐ€ ์‹ถ์ง€๋งŒ ๊ทธ๋ž˜๋„ ๊ฐ™์ด ํŽ˜์–ด์งœ์„œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š”๊ฒŒ ์ฆ๊ฒ๋‹ค.

BAD ๐Ÿ˜ฅ

์˜ค๋Š˜ ์šด๋™์„ ๋„ˆ๋ฌด ๊ณผํ•˜๊ฒŒ ํ–ˆ๋Š”์ง€ ์•ผ์‹์œผ๋กœ ์ƒˆ์šฐํƒ•์„ ๋จน์–ด๋ฒ„๋ ธ๋‹ค์‹์š•์˜ ๋…ธ์˜ˆ
ํŽ˜์–ด ๋ถ„์ด ๋ง์ˆ˜๊ฐ€ ์ ์œผ์‹œ๋‹ค๊ณ  ๋„ˆ๋ฌด ์ ๊ทน์ ์œผ๋กœ ๋‚˜๊ฐ€ ๋ถ€๋‹ด์Šค๋Ÿฝ๊ฒŒ ํ•˜์ง„ ์•Š์•˜๋‚˜ ์‹ถ๋‹ค.
๊ฐ์ฒด ์ถ”๊ฐ€ ๊ณต๋ถ€๋ฅผ ๋ชปํ–ˆ๋‹ค.

TO DO ๐Ÿ”ฅ

๊ฐ์ฒด ๊ณต๋ถ€๋ฅผ ๋„ˆ๋ฌด ๋ชปํ–ˆ์œผ๋‹ˆ ๊ทธ ๋ณด์ถฉ์„ ๊ผญ ํ•˜์ž.

Retrospect ๐Ÿง

bad ๋ž€์— ์ ์—ˆ๋˜ ๊ฒƒ์ฒ˜๋Ÿผ ์˜ค๋Š˜ ํŽ˜์–ด๋‹˜ํ•œํ…Œ ๋„ˆ๋ฌด ๋ถ€๋‹ด์Šค๋Ÿฝ๊ฒŒ ๋‚˜๊ฐ€์ง„ ์•Š์•˜๋‚˜ ๊ฑฑ์ •๋œ๋‹ค.
๋‚˜๋Š” ์ฆ๊ฑฐ์› ์ง€๋งŒ ํ˜ผ์ž ํญ์ฃผํ•ด์„œ ํ’€์–ด๋ฒ„๋ฆฌ๊ธฐ๋„ ํ–ˆ๊ณ .. ์กฐ๊ธˆ ์ž์ œํ•  ํ•„์š”๊ฐ€ ์žˆ์ง€ ์•Š๋‚˜ ์‹ถ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์•ผ์‹, ์›๋ž˜ ๋‚œ ์ƒค์›Œํ•˜๋ฉด์„œ ์œ ํŠœ๋ธŒ๋ฅผ ๋ณด๋Š” ํŽธ์ด๋‹ค.
์š”์ƒˆ ๋“ค์–ด ์–„ํŒํ•œ ์ฝ”๋”ฉ์‚ฌ์ „ ์ฑ„๋„์— ์œ ์ตํ•œ๊ฒŒ ๋งŽ์•„ ๋‚ด ๋ ˆ๋ฒจ์—์„  ์กฐ๊ธˆ ์–ด๋ ค์šด ๊ฐœ๋…๋“ค์ด์ง€๋งŒ ํ•œ๋ฒˆ ๋ด๋†“์œผ๋ฉด ๋‹ค์‹œ ๋ณผ๋•Œ ์‰ฝ์ง€ ์•Š๊ฒ ๋‚˜๋Š” ์ƒ๊ฐ์œผ๋กœ ๋ณด๊ณ  ์žˆ์—ˆ๋‹ค.
๊ทธ๋Ÿฐ๋ฐ ์˜ค๋Š˜์€ ์™œ ๋จน๋ฐฉ์„ ๋ด๋ฒ„๋ ธ๋Š”์ง€.
๊ตญ๋ฐฅ์„ ๋ง›๊น”๋‚˜๊ฒŒ ํก์ž…ํ•˜๋Š”๋ฐ (ํ•„์ž๋Š” ๊ตญ๋ฐฅ์ถฉ์ด๋‹ค.) ๋‚˜๋„ ๋ญ”๊ฐ€ ๋œจ๋ˆํ•œ๊ฑธ ๋“ค์ดํ‚ค์ง€ ์•Š์œผ๋ฉด ํฐ์ผ ๋‚  ๊ฒƒ ๊ฐ™์€ ๊ธฐ๋ถ„์ด ๋“ค์–ด ๊ทธ๋งŒ.. ํญ์ฃผํ•ด๋ฒ„๋ ธ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ํ•˜์ง€ ๊ธฐ๋…์œผ๋กœ ์˜ค๋Š˜์€ ํ‰์†Œ ๋‹ค๋‹ˆ๋˜ ๋’ท๋™์‚ฐ์— ์กฐ๊ธˆ ๊ธด๋ฃจํŠธ๋กœ ๋‹ค๋…€์˜ค๋ ค๊ณ  ํ–ˆ๋Š”๋ฐ ์›Œ๋‚™ ๋‹ค๋…€์˜จ์ง€ ์˜ค๋ž˜๋˜์–ด์„œ ๊ธธ์„ ๋ชป ์ฐพ์•˜๋‹ค ๐Ÿ˜…
์ž˜๋ชป๋“  ๊ธธ์—์„œ ๊ธธ์€ ์ฒ ๋ง์œผ๋กœ ๋ง‰ํ˜€์žˆ์ง€ ๋ฌถ์ธ ๊ฐœ๋Š” ๋‹ฌ๋ ค๋“ค ๊ฒƒ ๋งˆ๋ƒฅ ์ง–์–ด๋Œ€์ง€ ์˜ค๋ฅด๋ง‰ ํ•˜๋‚˜ ๋„˜์–ด์™”๋Š”๋ฐ ๋„˜์–ด์˜ค์ž๋งˆ์ž ์™ ์ง€ ์ฒด๊ฐ์˜จ๋„๊ฐ€ 5๋„๋Š” ๋–จ์–ด์ง„ ๊ฒƒ ๊ฐ™์ง€..
๊ทธ๋ƒฅ ์›๋ž˜ ๊ฐ€๋˜ ๋ฃจํŠธ๋กœ ๋Œ์•„๊ฐ”๋‹ค. ์ ˆ๋Œ€ ํ•ด ์งˆ๊นŒ๋ด ์ซ€๊ฑฐ ์•„๋‹˜

์ž์ œํ•˜์ž. ์—ด์‹ฌํžˆ ๊ณต๋ถ€ํ•˜๊ณ .

Reference ๐Ÿ™‡

๋ชจ๋˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ - https://ko.javascript.info/

์ข‹์€ ์›นํŽ˜์ด์ง€ ์ฆ๊ฒจ์ฐพ๊ธฐ