๋ฉฐ์น ์ ๋๋ฃ์ ์ฝ๋๋ฅผ ๋ณด๋ค๊ฐ ๋ฐ๋ณด๊ฐ์ ์ง๋ฌธ์ ํ๊ฒ๋์ด ๋ค์ ์ ๋ฆฌํด๋ณด๋ JSON์ ๊ฐ๋
์๋ฒ์ ์์ฒญ์ ๋ณด๋ด๋ ๋ฐ๋๋ฅผ `JSON.stringify()`๋ก ๋ณํํ๋ ์ฝ๋๋ฅผ ๋ณด๋๋ฐ ๊ฐ์๊ธฐ ํท๊ฐ๋ ธ๋ค. stringify๋ ๋ง๊ทธ๋๋ก ์๋ฐ์คํฌ๋ฆฝํธ ๊ฐ์ฒด๋ฅผ ๋ฌธ์์ด๋ก ์ง๋ ฌํ์์ผ์ฃผ๋ ๊ฒ์๋๋๊ฐ? ์ ์๋ฒ์ ์์ฒญ๋ณด๋ผ๋ stringify๋ฅผ ์ํค๋๊ฑฐ์ง..?? ๋๋ .. JSON๊ณผ JavaScript์ object๋ฅผ ํท๊ฐ๋ฆฌ๊ณ ์์๋ ๊ฒ์ด์๋ค.. ๐ฑ ๋จผ์ JSON์ด ๋ญ์ง๋ฅผ ์ ํํ ์์์ผํ๋ค. JSONJSON(JavaScript Object Notation)์ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ์์ ์๋ ์ผ๋ฐ ํ
์คํธ ํฌ๋งท์ ๋ปํ๋ค. JavaScript์ ๊ฐ์ฒด ํ๊ธฐ๋ฒ์ ๋ณธ๋ฐ์ JSON syntax๊ฐ ๋ง๋ค์ด์ก๋ค.JSON ํฌ๋งท์ ํ
์คํธ์ผ๋ฟ JavaScript์..
JavaScript
์ํฉ1๋ฒ์งธ api ์์ฒญ ๊ฒฐ๊ณผ์ ๋ฐ๋ผ์ 2๋ฒ์งธ api๊ฐ ์ฒ๋ฆฌ๋๋๋ก ๋๊ธฐ์ ์ผ๋ก ์คํ์์๋ฅผ ๋ณด์ฅํ๊ณ ์ถ๋ค. 1๋ฒ์งธ api ์ฌ์ฉ์๊ฐ ์
๋ ฅํ ๋น๋ฐ๋ฒํธ๊ฐ ๊ธฐ์กด ๋น๋ฐ๋ฒํธ์ ์ผ์นํ๋์ง ํ์ธ //์ฌ์ฉ์ ๋น๋ฐ๋ฒํธ ํ์ธ checkCurrentPassword: builder.mutation({ query: (password: string) => ({ url: ๋น๋ฐ๋ฒํธํ์ธ ์์ฒญ ์ฃผ์, method: 'POST', headers: { 'Content-type': 'text/plain', }, body: password, }), }), 2๋ฒ์งธ api์ฌ์ฉ์ ๋น๋ฐ๋ฒํธ๋ฅผ ๋ณ๊ฒฝ//๋น๋ฐ๋ฒํธ ๋ณ๊ฒฝupdatePasswordQuery: b..
ํ์
์คํฌ๋ฆฝํธ์ ์ธ๋ฑ์ค ์๊ทธ๋์ณ index signature ๋ฌธ๋ฒ [key: T]: U ์ธ์ ์ฌ์ฉ? ํ์
์คํฌ๋ฆฝํธ์ ์ด๋ค ๊ฐ์ฒด๊ฐ ์ฌ๋ฌ ํค๊ฐ์ ๊ฐ์ง๊ณ ์์ ๋ ์ฌ์ฉ "์ด ๊ฐ์ฒด์์ ๋ชจ๋ T ํ์
์ ํค๋ U ํ์
์ ๊ฐ์ ๊ฐ๋๋ค"๋ ๊ฒ์ ํํํ ๋ ์ธ๋ฑ์ค ์๊ทธ๋์ฒ๋ฅผ ํตํด ๋ช
์์ ์ผ๋ก ์ ์ํ ํค ์ธ์ ๋ค์ํ ํค๋ฅผ ๊ฐ์ฒด์ ์์ ํ๊ฒ ์ถ๊ฐ ๊ฐ๋ฅ ์ฃผ์ํ ์ ์ธ๋ฑ์ค ์๊ทธ๋์ฒ์ ํค(T)๋ ๋ฐ๋์ number ํน์ string ํ์
์ด์ด์ผ ํ๋ค. ์? ์๋ฐ์คํฌ๋ฆฝํธ ๊ฐ์ฒด์ ํค ํ์
์ ๋ฌธ์์ด์ด๋ฏ๋ก string ์ด์ด์ผ ํ๋ค. ๊ทธ๋ ๋ค๋ฉด number ํ์
์? ๋ฐฐ์ด์ ๊ฒฐ๊ตญ ํค ํ์
์ด ์ซ์์ธ ๊ฐ์ฒด์ ์ผ์ข
์ด๋ฏ๋ก number ํ์
๋ ํค๊ฐ ๋ ์ ์๋ค. ์์ ์ฝ๋ const airplaneSeating: {[seatNumber: string]: st..
๊ฐ์ฒด ํ์์ ๊ฐ์ง ๋ฐฐ์ด ์์์ ๊ฐ์ ์์ ํ๊ณ ์ถ์๋ค. ๊ทธ๋ฐ๋ฐ ๋ฐฐ์ด์ ๋ถ๋ณ์ฑ์ ์ง์ผ์ฃผ๋ map() ๊ณ ์ฐจํจ์๋ฅผ ์ฌ์ฉํด์ ๊ฐ์ฒด์ ์์๋ฅผ ์์ ํ๋๋ฐ๋, ์๋ณธ ๋ฐฐ์ด์ ๋ฐ์ดํฐ๊ฐ ์์ ์์ ๋๋ ํ์์ด ๋ฐ์ํ๋ค. immutable๊ณผ mutable ์ฐจ์ด๋ฅผ ์ ๋๋ก ์๊ณ ์ฐ๊ธฐ์ํด ์ ๋ฆฌํด๋ณด๋ คํ๋ค. ๋ฐ์ดํฐ state๋ผ๋ ๋ฐฐ์ด์ ๊ฐ์ฒด ํ์์ ์์๊ฐ ๋ค์ด๊ฐ์๋ค. const state = [ { id: 1, content: 'a' }, { id: 2, content: 'b' }, ]; ๋ชฉํ ํน์ id๋ก ๊ฐ์ฒด ์์๋ฅผ ์ฐพ์ ๊ทธ ์์์ content ๊ฐ์ ๋ฐ๊พธ๋ ํจ์๋ฅผ ์์ฑํ๋ค. ๊ทธ๋ฆฌ๊ณ ์ฒ์ state๊ฐ๊ณผ ํจ์๋ฅผ ํธ์ถํ์๋์ ๋ฐํ๋๋ ๊ฐ๊ณผ, ๊ทธ ์ดํ state๊ฐ์ด๋ ๋น๊ตํด๋ด์ผ๋ก์จ ์๋ณธ state ๋ฐ์ดํฐ๊ฐ ๋ณ๊ฒฝ๋์๋์ง (mutable), ..
์ฝํ
๋ฌธ์ ๋ฅผ ํ๋ค๊ฐ ๋ฐ๊ฒฌํ ์๋ฐ์คํฌ๋ฆฝํธ์ ๋ด์ฅํจ์ parseInt() ์ Number()์ ๋ค๋ฅธ์ ์ฌ์ค parseInt() ์ Number() ๋ชจ๋ ๋ด์ฉ๋ฌผ์ด ์ ์ํ ์ซ์์ธ๋ฐ type๋ง ๋ฌธ์ํ์ผ ๊ฒฝ์ฐ์๋ ๋ ๋ค ์ซ์ํ์ผ๋ก ์ ๋ณํํด์ฃผ์ด ๋๊ฐ์ ์ญํ ์ ํ๋ค๊ณ ๋ด๋ ๋ฌด๋ฐฉํ๋ค. ๋๋ ์ฌํ๊น์ง ๋ ํจ์ ๋ชจ๋ ๊ฐ์ ๊ธฐ๋ฅ์ ํ๋ ์ค ์์๋ค๋.. ๊ทธ๋ฐ๋ฐ ๋ด์ฉ๋ฌผ์ด ์ซ์๊ฐ ์๋ ๊ฒฝ์ฐ์๋ ๊ฐ๊ฐ ๋ค๋ฅธ ๊ฐ์ด ๋์ค๊ณ .. ์ฐพ์๋ณด๋ ์์ฐํ ์ด๋ก ์ ์ผ๋ก๋ ๋ฌ๋ผ์ ํ๋ฒ ์ ๋ฆฌํด๋ณธ๋ค. ์ค๋์ ์ฝํ
๋ฌธ์ const arr =[ '', '', '1', '23', '' ] ๋ฌธ์์ ์ซ์๊ฐ ์์ฌ์๋ string์์ ์ ๊ทํํ์์ผ๋ก ๋ฌธ์๋ฅผ ๊ฑธ๋ฌ๋ด๊ณ ์ซ์ํ๋ง ๋จ๊ธฐ๊ณ , ๋๋จธ์ง ์ซ์๋ฅผ ๋ํด์ฃผ๋ ๊ฒฐ๊ณผ๊ฐ ํ์ํ๋ค. ๊ทธ๋์ ๊ฐ ๋ฐฐ์ด ์์๋ฅผ ์ซ์ํ์ผ๋ก ๋ฐ๊พธ๊ณ ๋ํด์ฃผ๋ฉด ๋..
์ ๊ธฐํ ๊ฒฝํ์ด๋ค. ์ฒ์ ๊ณต๋ถํ ๋๋ ์ ํ ๋ฌด์จ๋ง์ธ์ง ์ดํด๊ฐ ์๋๋ ๊ฒ๋ค์ด ๋ถํธ์บ ํ ์๋ฃํ ๋ค์ ๋ชจ๋ ์๋ฐ์คํฌ๋ฆฝํธ Deep Dive ์ฑ
์ ์ฝ์ผ๋ ์ ์ ์ ์ฝํ๋ค. (์์ง ์ฒ์ ๋ถ๋ถ์ด๋ผ ๊ทธ๋ฐ๊ฑธ์ง๋.... ) ์๋ฐ์คํฌ๋ฆฝํธ ๋ฉด์ ์คํฐ๋๋ฅผ ์์ํ๋ฉด์ ํ์๋ค์ด๋ ๊ฐ์ ์๋ฐ์คํฌ๋ฆฝํธ ์ฑ
์ ์ฝ๊ณ ๊ถ๊ธํ ๊ฒ๋ค์ ๊ณต์ ํ๋๋ฐ ์์ฆ ๊ทธ๋์ ๊ผญ ํ์๊ฐ ์ด์์ ๋ชจ๋ฅ๋ค ์ฑ
์ ์ฝ์ ๊ฒ ๊ฐ๋ค. ์์ฆ ์ด ๋๊บผ์ด ์ฑ
์ฝ๋ ์ฌ๋ฏธ์ ๋น ์ก๋ค ! ๐ ์ง๋ฌธ const a = {}; a.b = 5; console.log(a.b) = ? ์ฝ์์ ์ฐํ๋ ๊ฐ์? ๐ ๋ฉด์ ์ง๋ฌธ ์๋ 1. const๋ let์ ์๊ณ ์๋๊ฐ? 2. ์์ํ์
, ๊ฐ์ฒดํ์
์ ์ฐจ์ด๋ฅผ ์๊ณ ์๋๊ฐ? ๐ ๋ต๋ณ 5๊ฐ ์ฐํ๋ค. ๋น ๊ฐ์ฒด๋ฅผ a๋ผ๋ ์์๋ก ํ ๋น์ ํด์ฃผ์๋ค. const ํค์๋๊ฐ ์์ด ..