๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

js47

JS_๊ธฐ๋ณธ ๋ฌธ๋ฒ• (34)_ prototype (ํŠน์ง• ๋ฐ constructor์™€์˜ ์ฐจ์ด) JS์˜ prototype์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด์ž. 0. ์ƒ์†(inheritance) ๊ฐ์ฒด์ง€ํ–ฅ์˜ ๊ฐœ๋… ์ค‘ ํ•˜๋‚˜์ธ ์ƒ์†์€ ๊ฐ„๋‹จํžˆ ํ‘œํ˜„ํ•˜๋ฉด ๋ถ€๋ชจ ๊ฐ์ฒด์˜ ์†์„ฑ์„ ์ž์‹ ๊ฐ์ฒด๊ฐ€ ๋ฌผ๋ ค๋ฐ›๋Š” ๊ฒƒ์„ ๋งํ•œ๋‹ค. JS์—์„œ ์ด๊ฒƒ์„ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ•์ด ๋ช‡๊ฐ€์ง€ ์žˆ๋Š”๋ฐ ์ฒซ๋ฒˆ์งธ๋Š” ์ €๋ฒˆ์‹œ๊ฐ„์— ๋‹ค๋ฃจ์—ˆ๋˜ constructor ๋ฌธ๋ฒ•์ด๋‹ค. 2023.08.08 - [๐ŸŒŒ | WEB DEV/Vanilla JS] - JS_๊ธฐ๋ณธ ๋ฌธ๋ฒ• (33)_ constructor ๋ฌธ๋ฒ• ๊ทธ๋ฆฌ๊ณ  ๋‘๋ฒˆ์งธ ๋ฐฉ๋ฒ•์ด prototype์ด๋‹ค. 1. prototype ๋ชจ๋“  ์ƒ์„ฑ์ž ํ•จ์ˆ˜๋“ค์€ prototype์„ ๋‚ด์žฅํ•˜๊ณ  ์žˆ๋‹ค. function Student(name, code){ this.name = name; this.code = code; } console.log(Student.prot.. 2023. 8. 11.
JS_๊ธฐ๋ณธ ๋ฌธ๋ฒ• (33)_ constructor ๋ฌธ๋ฒ• JS์˜ Object๋ฅผ ์ƒ์„ฑํ•˜๋Š” constructor ๋ฌธ๋ฒ•์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด์ž. 0. Object์˜ ๋ณต์‚ฌ ๋ฌธ์ œ Object๋Š” Reference ๋ฐ์ดํ„ฐ ํƒ€์ž…์ด๋‹ค. ๋”ฐ๋ผ์„œ ๋ณต์‚ฌ๋ฅผ ํ• ๋•Œ ์•„๋ž˜์™€ ๊ฐ™์ด ๋‹จ์ˆœํ•˜๊ฒŒ ์ง„ํ–‰ํ•ด์„œ๋Š” ์•ˆ๋œ๋‹ค. ์ž˜๋ชป๋œ ๊ฐ์ฒด ๋ณต์‚ฌ ์˜ˆ์‹œ let obj1 = {name: "Kassid"}; let obj2 = obj1; ์ด๋ ‡๊ฒŒ ๋ณต์‚ฌ๋ฅผ ํ•˜๊ฒŒ ๋œ๋‹ค๋ฉด ๊ฐ’ ์ž์ฒด์˜ ๋ณต์‚ฌ๊ฐ€ ์•„๋‹Œ ๋ ˆํผ๋Ÿฐ์Šค๋ฅผ ๋ณต์‚ฌํ•˜๋Š” ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— ์•ˆ์ „ํ•œ ๋ณต์‚ฌ๋ผ๊ณ  ํ•  ์ˆ˜ ์—†๋‹ค. 1. constructor ๋ฌธ๋ฒ• constructor๋Š” ์œ„์˜ object๋ฅผ ์ƒ์„ฑ๊ธฐ๊ณ„๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด๋ฅผ ์ด์šฉํ•ด ์œ„์˜ ๋ณต์‚ฌ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด๋ฅผ ์ด์šฉํ•ด์„œ ๋น„์Šทํ•œ ๊ฐ์ฒด๋ฅผ ์†์‰ฝ๊ฒŒ ์–‘์‚ฐํ•ด๋‚ผ ์ˆ˜ ์žˆ๋‹ค. ์‚ฌ์šฉ๋ฒ• function ์ƒ์‚ฐ๊ธฐ๊ณ„๋ช…(){ this.์†์„ฑ = ...; .... 2023. 8. 8.
JS_๊ธฐ๋ณธ ๋ฌธ๋ฒ• (31)_ ํ•จ์ˆ˜ ํŒŒ๋ผ๋ฏธํ„ฐ (default, arguments) JS ํ•จ์ˆ˜์˜ ํŒŒ๋ผ๋ฏธํ„ฐ ์ค‘ default์™€ argument์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด์ž. 1. default ํŒŒ๋ผ๋ฏธํ„ฐ default ํŒŒ๋ผ๋ฏธํ„ฐ ์ฆ‰, ๊ธฐ๋ณธ๊ฐ’์€ ํŒŒ๋ผ๋ฏธํ„ฐ์— ๊ฐ’์ด ์ „๋‹ฌ๋˜์ง€ ์•Š์•˜์„ ๊ฒฝ์šฐ ์ดˆ๊ธฐ๊ฐ’์„ ์ง€์ •ํ•ด์ฃผ๋Š” ๊ฒƒ์ด๋‹ค. ๋‹จ์ˆœ ๊ฐ’ ๋ฟ๋งŒ ์•„๋‹Œ ๋‹ค์–‘ํ•œ ๊ฒƒ๋“ค์„ ์ง€์ •ํ•ด์ค„ ์ˆ˜ ์žˆ๋‹ค. ์˜ˆ์‹œ 1. ๋‹จ์ˆœ๊ฐ’ function print(a = 1){ console.log(a); } print(); -------- 1 ์˜ˆ์‹œ 2. ์—ฐ์‚ฐ function print(a, b = a*2){ console.log(a + b); } print(1); print(1, 1); -------- 3 2 ์˜ˆ์‹œ 3. ํ•จ์ˆ˜ let square = (i)=>{return i**2}; function print(a, b = square(a)){ console.l.. 2023. 8. 7.
JS_๊ธฐ๋ณธ ๋ฌธ๋ฒ• (30)_ Spread Operator JS์˜ Sperad Operator์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด์ž. 0. Spread Operator Spread Operator๋Š” ์ ์ด 3๊ฐœ(...)์ธ ์—ฐ์‚ฐ์ž์ด๋‹ค. ์ด ์—ฐ์‚ฐ์ž๋ฅผ ์ด์šฉํ•ด์„œ ์—ฌ๋Ÿฌ ๊ณณ์— ํ™œ์šฉ์„ ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋จผ์ € ์˜ˆ์‹œ๋ฅผ ํ†ตํ•ด์„œ ์—ฐ์‚ฐ์ž์˜ ๊ธฐ๋Šฅ์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด๋ฉด ์˜ˆ์‹œ let a = [1, 2, 3]; let b = "Hello"; console.log(...a); console.log(...b); ์ด์ฒ˜๋Ÿผ array ํ˜น์€ ๋ฌธ์ž์—ด ๊ฐ™์€ ๊ฒƒ๋“ค์„ ํ•˜๋‚˜์”ฉ ๋ถ„ํ•ดํ•ด์ค€๋‹ค. ํ™œ์šฉ 1. Array ๋ณ‘ํ•ฉ & ๋ณต์‚ฌ ์ฒซ๋ฒˆ์งธ ํ™œ์šฉ์€ array๋ฅผ ํ•ฉ์น˜๊ฑฐ๋‚˜ ๋ณต์‚ฌํ•˜๋Š” ๊ฒƒ์ด๋‹ค. 1) ๋ณ‘ํ•ฉ let a = [1, 2]; let b = [3, 4]; let c = [...a, ...b]; console.log(c); c = [...b, ...a.. 2023. 8. 6.
JS_๊ธฐ๋ณธ ๋ฌธ๋ฒ• (29)_ Tagged Literals ES6๋ถ€ํ„ฐ๋Š” Tagged Literals ๋ผ๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•œ๋‹ค. ์ด์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด์ž. 1. Tagged Literals Tagged Literals๋Š” ๋ฌธ์ž ํ•ด์ฒด๋ถ„์„ ๊ธฐ๋Šฅ์„ ํ•จ์ˆ˜๋กœ ๋งŒ๋“œ๋Š” ๊ฒƒ์„ ์ด์•ผ๊ธฐํ•œ๋‹ค. ์ด๋Š” template literals๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค. ์˜ˆ์‹œ let val = "Korea"; function func(strings, values){ console.log(strings); console.log(values); } func`Welcome to ${val}!` ์œ„์˜ ์˜ˆ์‹œ๋ฅผ ๋ณด๋ฉด func๋ผ๋Š” ํ•จ์ˆ˜์— ๋ฐฑํ‹ฑ( ` )์œผ๋กœ ๊ฐ์‹ธ์ง„ ๋ฌธ์ž์—ด์„ ๋ถ™์ธ ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค. ์ด๊ฒƒ์ด ๋ฐ”๋กœ tagged literals ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค. tagged literals ํ•จ์ˆ˜๋ฅผ ์‚ดํŽด๋ณด๋ฉด 2๊ฐœ์˜ ํŒŒ.. 2023. 8. 5.
JS_๋ฌธ๋ฒ• (๊ฐœ์ธ)_ ๋ณ€์ˆ˜ ์ด์ •๋ฆฌ JS์—์„œ ๋ณ€์ˆ˜๋ฅผ ๋งŒ๋“ค ๋•Œ 3๊ฐ€์ง€ ๋ฐฉ๋ฒ•์ด ์กด์žฌํ•œ๋‹ค. ์ด๋“ค์€ ์„ ์–ธ, ํ• ๋‹น, ๋ฒ”์œ„์˜ ์ธก๋ฉด์—์„œ ์„œ๋กœ ๋‹ค๋ฅธ ํŠน์ง•์„ ๊ฐ€์ง„๋‹ค! var let const ์„ ์–ธ ํ• ๋‹น ๋ฒ”์œ„ var ์žฌ์„ ์–ธ O ์žฌํ• ๋‹น O ํ•จ์ˆ˜ scope let ์žฌ์„ ์–ธ X ์žฌํ• ๋‹น O ๋ธ”๋ก scope const ์žฌ์„ ์–ธ X ์žฌํ• ๋‹น X (๊ฐ์ฒด ๋‚ด๋ถ€๋Š” ์ƒ๊ด€์—†์Œ ) ๋ธ”๋ก scope - ๋งŒ์•ฝ ๋ณ€๊ฒฝ ๋ถˆ๊ฐ€๋Šฅํ•œ ๊ฐ์ฒด๋ฅผ ๋งŒ๋“ค๊ณ  ์‹ถ๋‹ค๋ฉด? ๊ฐ์ฒด๋Š” ์–ด๋– ํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ ์„ ์–ธํ•˜์—ฌ๋„ ๋‚ด๋ถ€ ์š”์†Œ์— ๋Œ€ํ•œ ์ˆ˜์ •์€ ๊ฐ€๋Šฅํ•˜๋‹ค. ์ด๋ฅผ ๋ฐฉ์ง€ํ•˜๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ์—๋Š” ์•„๋ž˜์˜ ๋ฐฉ๋ฒ•์„ ์ด์šฉํ•œ๋‹ค. Object.freeze( ์ˆ˜์ •๋ถˆ๊ฐ€ํ•˜๊ฒŒ ํ•˜๊ณ ์‹ถ์€ ๊ฐ์ฒด๋ช… ); ์˜ˆ์‹œ const a = { name : "Kassid"}; Object.freeze(a); a.name = "Hello"; console.log(a); ๋ณ€์ˆ˜์™€ ํ˜ธ.. 2023. 8. 4.
JS_๊ธฐ๋ณธ ๋ฌธ๋ฒ• (28)_ Arrow function JS์˜ Arrow function์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด์ž. 1. Arrow Function ์ด๋ž€? ํ™”์‚ดํ‘œ ํ•จ์ˆ˜๋Š” ์•„๋ž˜์™€ ๊ฐ™์ด ์‚ฌ์šฉํ•œ๋‹ค. let a = ()=> { ... } a(); ๊ธฐ์กด์˜ function( ){ ... } ๊ณผ ๋‹ค๋ฅด๊ฒŒ =>(ํ™”์‚ดํ‘œ)๋ฅผ ์ด์šฉํ•˜์—ฌ ํ•จ์ˆ˜๋ฅผ ๋งŒ๋“ ๋‹ค. 2. Arrow Function์˜ ์žฅ์  ํ™”์‚ดํ‘œ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ๋Š” ๋ฌด์—‡์ผ๊นŒ? ๋จผ์ € ํ•จ์ˆ˜๋ฅผ ์–ด๋– ํ•œ ๊ฒฝ์šฐ์— ๋งŒ๋“ค์–ด์„œ ์‚ฌ์šฉํ•˜๋Š”์ง€ ์‚ดํŽด๋ณด๋ฉด 1. ์ฝ”๋“œ๋“ค์„ ๊ธฐ๋Šฅ์œผ๋กœ ๋ฌถ๊ณ  ์‹ถ์„ ๋•Œ / 2. ์ž…์ถœ๋ ฅ ๊ธฐ๋Šฅ์„ ๋งŒ๋“ค ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค. 1) ์ž…์ถœ๋ ฅ ๊ธฐ๋Šฅ์„ ์ž˜ ํ‘œํ˜„ํ•˜๋Š” ๋ฌธ๋ฒ•์ด๋‹ค. arrow function์€ ํ•จ์ˆ˜์˜ ๊ธฐ๋Šฅ ์ค‘ ์ž…์ถœ๋ ฅ ๊ธฐ๋Šฅ์„ ์ž˜ ํ‘œํ˜„ํ•ด์ฃผ๋Š” ์žฅ์ ์ด ์žˆ๋‹ค. let func = (x, y) => { return x + y } // x, y๋ฅผ ๋„ฃ์œผ๋ฉด ๋‘ .. 2023. 8. 2.
JS_๊ธฐ๋ณธ ๋ฌธ๋ฒ• (27)_ this ํ‚ค์›Œ๋“œ JS์˜ this ํ‚ค์›Œ๋“œ์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด์ž. (4๊ฐ€์ง€) 0. this ํ‚ค์›Œ๋“œ์˜ ์˜๋ฏธ this ํ‚ค์›Œ๋“œ๋Š” ๋‹ค์–‘ํ•œ ์˜๋ฏธ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ๊ทธ ์˜๋ฏธ๋Š” ์‚ฌ์šฉํ•˜๋Š” ์œ„์น˜์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์ง„๋‹ค. (์‚ฌ์‹ค ์•„๋‹์ˆ˜๋„..?) 1-1. global์—์„œ ์‚ฌ์šฉ & ์ผ๋ฐ˜(์ „์—ญ) ํ•จ์ˆ˜์—์„œ ์‚ฌ์šฉ -> window ๋จผ์ € ๊ฐ€์žฅ ์ƒ์œ„ ์œ„์น˜์—์„œ this ํ‚ค์›Œ๋“œ๋ฅผ ์ฝ˜์†”์—์„œ ํ™•์ธํ•ด๋ณด๋ฉด ์•„๋ž˜์™€ ๊ฐ™๋‹ค. window๋ผ๋Š” ๊ฐ์ฒด๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค. +) window๋ž€? - ๋ชจ๋“  ์ „์—ญ๋ณ€์ˆ˜, ํ•จ์ˆ˜, DOM์„ ๊ด€๋ฆฌํ•˜๋Š” ์ „์—ญ๊ฐ์ฒด! - ์˜ˆ๋ฅผ๋“ค์–ด ์ „์—ญ๋ณ€์ˆ˜๋ฅผ ์ƒ์„ฑํ•˜๋ฉด window ์•ˆ์— ์ƒ์„ฑ๋˜๋Š” ๊ฒƒ์ด๋‹ค. 1-2. strict mode์ผ๋•Œ ์ผ๋ฐ˜ ํ•จ์ˆ˜ ์•ˆ์—์„œ ์‚ฌ์šฉ -> undefined 'use strict' 'use strict'๋ผ๋Š” ํ‚ค์›Œ๋“œ๋ฅผ ์ตœ์ƒ๋‹จ์— ์ถ”๊ฐ€ํ•˜๋ฉด strict ๋ชจ๋“œ๋กœ ์ž‘์„ฑํ• .. 2023. 8. 1.
[React] 2-1. array state ์ •๋ ฌํ•˜๊ธฐ ( .sort()ํ™œ์šฉ) ์ด์ „ ๊ธ€ โ–ผ ๋”๋ณด๊ธฐ 0. 2023.05.05 - [๐ŸŒŒ | WEB DEV/React] - [React] 0. React๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ  & ์ดˆ๊ธฐ ์„ธํŒ… 1. 2023.05.07 - [๐ŸŒŒ | WEB DEV/React] - [React] 1. JSX 2. 2023.05.26 - [๐ŸŒŒ | WEB DEV/React] - [React] 2. state (๋ณ€์ˆ˜, array, object) array state๋ฅผ ์ •๋ ฌํ•˜๊ณ  ์‹ถ์„ ๋•Œ๋Š” ์–ด๋–ป๊ฒŒ ํ•ด์•ผํ• ๊นŒ? ๊ฐ€์žฅ ๋ณดํŽธ์ ์ธ ๋ฐฉ๋ฒ•์ธ sort()๋ฉ”์„œ๋“œ๋ฅผ ์ด์šฉํ•ด๋ณด์ž. 1. sort() ํ™œ์šฉํ•˜์—ฌ array state ์ •๋ ฌํ•˜๊ธฐ let [music, setMusic] = useState( [{"type": "Rock", "title": "Summer", "singer": "The Volun.. 2023. 5. 27.
๋ฐ˜์‘ํ˜•