JavaScript
-
- [Node.js] ๋ ธ๋๋ชฌ(nodemon) ํจํค์ง
๋ ธ๋๋ชฌ(nodemon) ํจํค์ง ๋ค์ด๊ฐ๋ฉฐ Node.js์ ๋ ธ๋๋ชฌ(Nodemon) ํจํค์ง๋ฅผ ์ค์นํ๊ณ ์คํํด๋ณด์. ๋ ธ๋๋ชฌ(Nodemon) ๊ฐ๋ Node.js ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฐ๋ฐ ๋ฐ ์คํํ๋ ๋ฐ ๋์์ ์ฃผ๋ ์ ์ฉํ ๋๊ตฌ ์ค ํ๋ ๊ฐ๋ฐ์๊ฐ ์ฝ๋๋ฅผ ๋ณ๊ฒฝํ๊ณ ์ ์ฅํ ํ ์๋ฒ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์๋์ผ๋ก ๋ค์ ์์ํ์ฌ ๊ฐ๋ฐ ํ๋ก์ธ์ค๋ฅผ ๋ ํจ์จ์ ์ผ๋ก ๋ง๋ค์ด์ค๋ค. ์ฃผ๋ก ๊ฐ๋ฐ ์ค์ธ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ค์๊ฐ์ผ๋ก ๋ชจ๋ํฐ๋งํ๊ณ ๋ณ๊ฒฝ ์ฌํญ์ ๋ฐ์ํ๋ ๋ฐ ์ฌ์ฉ๋๋ค. ํน์ง ์ฝ๋ ๋ณ๊ฒฝ ๊ฐ์ง ๋ ธ๋๋ชฌ์ ์ฝ๋ ๋ณ๊ฒฝ์ ์ค์๊ฐ์ผ๋ก ๊ฐ์งํ๊ณ ์ ์ฅํ ํ์ ์ ํ๋ฆฌ์ผ์ด์ ์ ์๋์ผ๋ก ๋ค์ ์์ํ๋ค. ์ฝ๋ ์์ ํ ์๋์ผ๋ก ์๋ฒ๋ฅผ ์ฌ์์ํ ํ์๊ฐ ์์ด ๊ฐ๋ฐ์์ ์์ฐ์ฑ์ ํฅ์์ํจ๋ค. ๋ค์ํ ํ์ผ ์ ํ ์ง์ ๋ ธ๋๋ชฌ์ JavaScript ํ์ผ ๋ฟ๋ง ์๋๋ผ HTML, ..
2023.11.08 -
- [Node.js] Express.js
Express.js ๋ค์ด๊ฐ๋ฉฐ @Express.js@์ ๋ํด ์์๋ณด์. Express.js ๊ฐ๋ Node.js์ ํต์ฌ ๋ชจ๋์ธ http์ Connect ์ปดํฌ๋ํธ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๋ ์น ์ ํ๋ฆฌ์ผ์ด์ ํ๋ ์์ํฌ๋ก, ์น ์ ํ๋ฆฌ์ผ์ด์ ๋ฐ API๋ฅผ ๊ฐ๋ฐํ๋ ๋ฐ ์ฌ์ฉ๋๋ค. Express.js๋ Node.js์ ํจ๊ป ์ฌ์ฉ๋๋ฉฐ, ์น ์ ํ๋ฆฌ์ผ์ด์ ๋ฐ API๋ฅผ ๋น ๋ฅด๊ฒ ๊ฐ๋ฐํ๊ณ ๊ด๋ฆฌํ๋ ๋ฐ ๋์์ ์ค๋ค. Node.js์ ์ฌ์ค์์ ํ์ค ์๋ฒ ํ๋ ์์ํฌ๋ก ๋ถ๋ฆฌ๊ณ ์๋ค. 2010๋ TJ Holowaychuk์ ์ํด ๊ฐ๋ฐ๋์๋ค. ๊ฐ๋จํ ์ต์คํ๋ ์ค(Express)๋ผ๊ณ ๋ถ๋ฅธ๋ค. MIT ํ๊ฐ์๋ก ๋ผ์ด์ ์ค๋๋ ์์ -์คํ ์์ค ์ํํธ์จ์ด๋ก ์ถ์๋์๋ค. ์ต์คํ๋ ์ค๋ ๋ชฝ๊ณ DB ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ํํธ์จ์ด, AngularJS ํ๋ก ํธ์๋ ํ๋ ์์ํฌ์ ํจ๊ป M..
2023.11.08 -
- [Node.js] ๋ชจ๋ ๋ถ๋ฌ์ค๋ ๋ฐฉ์ (require, import)
Node.js์์ ๋ชจ๋ ๋ถ๋ฌ์ค๋ ๋ฐฉ์ (require, import) ๋ค์ด๊ฐ๋ฉฐ Node.js์์ ๋ชจ๋(Module)์ ๋ถ๋ฌ์ค๋ ๋ฐฉ์์ ํฌ๊ฒ 2๊ฐ์ง๊ฐ ์๋ค. CommonJS ์คํ์ผ๋ก ๋ถ๋ฌ์ค๋ @require@ ๋ฐฉ์๊ณผ ES6 ๋ชจ๋ ์คํ์ผ๋ก ๋ถ๋ฌ์ค๋ @import@ ๋ฐฉ์ 2๊ฐ์ง๊ฐ ์๋ค. ์ด ๋ ๊ฐ์ง ๋ฐฉ๋ฒ์ ์ฐจ์ด์ ์ ๋ํด ์์๋ณด์. Node.js์์ require๊ณผ import์ ์ฐจ์ด์ ? require require๋ Node.js์ ๊ธฐ๋ณธ ๋ชจ๋ ์์คํ ์์ ์ฌ์ฉ๋๋ ๋ฐฉ๋ฒ์ด๋ค. CommonJS ์คํ์ผ๋ก ๋ชจ๋์ ๊ฐ์ ธ์จ๋ค. // ํ์ผ ์์คํ ๋ชจ๋ ๊ฐ์ ธ์ค๊ธฐ const fs = require('fs'); // ์ฌ์ฉ์ ์ ์ ๋ชจ๋ ๊ฐ์ ธ์ค๊ธฐ (์๋ ๊ฒฝ๋ก ์ฌ์ฉ) const math = require('./math'); requi..
2023.11.07 -
- [JavaScript] ์น ์์์ ๋ด์ฉ ๊ฐ์ ธ์ค๊ธฐ (innerText, innerHTML, textContent)
์น ์์์ ๋ด์ฉ ๊ฐ์ ธ์ค๊ธฐ (innerText, innerHTML, textContent)๋ค์ด๊ฐ๋ฉฐ์๋ฐ์คํฌ๋ฆฝํธ๋ก ์น ์์์ ๋ด์ฉ์ ๊ฐ์ ธ์ค๊ณ ์์ ํ๋ ๋ฐฉ๋ฒ์ ์์๋ณด์. ์น ์์์ ๋ด์ฉ ๊ฐ์ ธ์ค๊ธฐโ @innerText@ ํ๋กํผํฐ์น์์.innerText์น ๋ธ๋ผ์ฐ์ ์์ ๋ณด์ด๋ ๋ด์ฉ๋ง ๊ฐ์ ธ์จ๋ค.@display: none@์ ์ฌ์ฉํด์ ํ๋ฉด์์ ๊ฐ์ถ ์์์ ๋ด์ฉ์ ๊ฐ์ ธ์ค์ง ์๋๋ค.์์ค ์ฝ๋์ ๊ณต๋ฐฑ์ด ์ฌ๋ฌ ๊ฐ ์ ๋ ฅ๋์ด ์์ด๋ ์น ๋ธ๋ผ์ฐ์ ์ฐฝ์ ๋ณด์ด๋ ๋๋ก ๊ณต๋ฐฑ 1์นธ๋ง ๊ฐ์ ธ์จ๋ค. โก @innerHTML@ ํ๋กํผํฐ์น์์.innerHTML์น ๋ธ๋ผ์ฐ์ ์ฐฝ์ ์ด๋ป๊ฒ ๋ณด์ด๋์ง์๋ ์๊ด ์์ด, ์์ ์์ ์๋ ํ๊ทธ(Tag)์ ํจ๊ป ์์ค ์ฝ๋์ ์๋ ๊ทธ๋๋ก ๊ฐ์ ธ์จ๋ค. โข @textContent@ ํ๋กํผํฐ์น์์.textContent์์์ ..
2023.07.29 -
- [JavaScript] ์๋ฐ์คํฌ๋ฆฝํธ(ES6)์ ๋ค์ํ for ๋ฌธ : forEach ๋ฌธ, for ... in ๋ฌธ, for ... of ๋ฌธ
์๋ฐ์คํฌ๋ฆฝํธ(ES6)์ ๋ค์ํ for ๋ฌธ : forEach ๋ฌธ, for ... in ๋ฌธ, for ... of ๋ฌธ๋ค์ด๊ฐ๋ฉฐ์๋ฐ์คํฌ๋ฆฝํธ ES6์ ์๋ ๋ค์ํ ์ข ๋ฅ์ for ๋ฌธ์ ๋ํด ์์๋ณด์.์๋ฐ์คํฌ๋ฆฝํธ์๋ for ๋ฌธ, forEach ๋ฌธ, for ... in ๋ฌธ, for ... of ๋ฌธ์ด ์๋ค. (ES6 ๊ธฐ์ค) โ for ๋ฌธfor (์ด๊น๊ฐ; ์กฐ๊ฑด; ์ฆ๊ฐ์) { ... } ์กฐ๊ฑด์ ๋ค์ด๊ฐ๋ ๊ฐ์ด ์ผ์ ํ๊ฒ ์ปค์ง๋ฉด์ ๋ช ๋ น์ ๋ฐ๋ณต ์คํํ ๋ ํธ๋ฆฌํ๋ค.๋ช ๋ฒ ๋ฐ๋ณตํ๋์ง ๊ธฐ๋กํ๊ธฐ ์ํด ์นด์ดํฐ๋ฅผ ์ฌ์ฉํ๊ณ , for ๋ฌธ์ ์ฒซ ๋ฒ์งธ ํญ์์ ์นด์ดํฐ ๋ณ์๋ฅผ ์ง์ ํ๋ค. ์์ ์ฝ๋const seasons = ["Spring", "Summer", "Fall", "Winter"];for (let i = 0; i ์์ ์ฝ๋์์ ๋ฐฑํฑ(Bac..
2023.07.19 -
- [JavaScript] ==/!= ์ฐ์ฐ์์ ===/!== ์ฐ์ฐ์์ ์ฐจ์ด์
==/!= ์ฐ์ฐ์์ ===/!== ์ฐ์ฐ์์ ์ฐจ์ด์ ๋ค์ด๊ฐ๋ฉฐ์๋ฐ์คํฌ๋ฆฝํธ์์ ์ฌ์ฉ๋๋ @==@ / @!=@ ์ฐ์ฐ์์ @===@ / @!==@ ์ฐ์ฐ์์ ์ฐจ์ด์ ์ ๋ํด ์์๋ณด์. @==@ / @!=@ ์ฐ์ฐ์๋น๊ตํ๋ ํผ์ฐ์ฐ์์ ์๋ฃํ์ ์๋์ผ๋ก ๋ณํํด์ ๋น๊ตํ๋ค.์ซ์ @3@๊ณผ ๋ฌธ์์ด @"3"@์ ๋น๊ตํ๋ฉด, ๋ฌธ์์ด๋ก ๋ณํํด์ ๋น๊ตํ๋ฏ๋ก 2๊ฐ์ ๊ฐ์ด ๊ฐ๋ค๊ณ ์ธ์ํ๋ค.3 == "3" // true3 != "3" // false @===@ / @!==@ ์ฐ์ฐ์๊ฐ ๋ฟ๋ง ์๋๋ผ ๋ฐ์ดํฐ ์ ํ(์๋ฃํ)๊น์ง ๋น๊ตํ๋ค.์๋์ผ๋ก ์๋ฃํ์ด ๋ณํ๋์ง ์๋๋ค.๋ฐ๋ผ์ ์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ์ฌ์ฉํ๋ฉด์ ๊ฐ์ ๋น๊ตํ ๋๋ @==@, @!=@ ์ฐ์ฐ์๋ณด๋ค @===@, @!==@ ์ฐ์ฐ์๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข๋ค.3 === "3" // fals..
2023.07.19