๐ฏ๏ธ ์์ธํ promise๋ ์ฌ๊ธฐ ๐๏ธPromise ๋ฅผ ์ฐธ๊ณ ํ์!
const fs = require("fs");
fs.readFile("./readme.txt", (err, data) => {
if (err) {
throw err;
}
console.log(data) // <Buffer eb 82 98 eb a5 bc 20 ec 9d bd ec 96 b4 eb 9d bc>
// readFile์ ๊ฒฐ๊ณผ๋ฌผ์ ๋ฒํผ๋ผ๋ ํ์์ผ๋ก ์ ๊ณต๋จ (*๋ฒํผ: ๋ฉ๋ชจ๋ฆฌ์ ๋ฐ์ดํฐ)
console.log(data.toString()) // ๋๋ฅผ ์ฝ์ด๋ผ
} )
fs.readFile('/etc/passwd', 'utf8', ( (err, data) > { } ) );
// err๊ฐ ๋ฐ์ํ์ง ์์ผ๋ฉด, err -> null์ด ๋๋ค.
// data์ ๋ฌธ์์ด, Buffer ํํ์ ๊ฐ์ฒด๊ฐ ์ ๋ฌ๋๋ค. (data๋ ํ์ผ์ ๋ด์ฉ)
path
: ํ์ผ ์ด๋ฆ์ ์ธ์๋ก ๋๊ธธ ์ ์์
option
: ๋ง๊ทธ๋๋ก ์ต์
callback
: ์ฝ๋ฐฑํจ์๋ฅผ ๋๊น
function / ํ์ผ์ ์ฝ๊ณ ๋ ๋ค, ๋น๋๊ธฐ์ ์ผ๋ก ์คํ๋๋ ํจ์
2 ๊ฐ์ง ์ธ์
err
: ์๋ฌ (๋ฐ์ํ์ง ์์ผ๋ฉด null)data
: ํ์ผ์ ๋ด์ฉ (๋ฌธ์์ด์ด๋ buffer๋ผ๋ ๊ฐ์ฒด๊ฐ ์ ๋ฌ๋จ)๋ฒํผ
: ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅ๋ ๋ฐ์ดํฐ (์, ๋ฌผ๋ ๋ฐฉ์๊ฐ ํ๋ ค๋ณด๋ด์ฃผ๋ ๋ฌผ์ ์ฌ์ฉํ๊ธฐ ์ํด ๋ฌผ์ ๋ฐ์๋๋ ์๋์ดโก๏ธ ๊ทผ๋ฐ ์ด๊ฒ์ ์กฐ๊ทธ๋งํ ํฌ๊ธฐ์ ๋ฐฐ์ด(arr)์ผ ์๋ or ์คํธ๋ง(str)์ผ ์๋)์ฒญํฌ
: ๋๋ ์ง ์กฐ๊ฐ๋ค / (์, ๋ฌผ๋ ๋ฐฉ์ ์นธ์ ๋ด๊ธด ๋ฌผ)์คํธ๋ฆผ
readable
: ์ด๋๊ฐ ์ ์ฅ๋ ํ์ผ์์ โก๏ธ ํ๋ก๊ทธ๋จ์ด ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด์ฌ ๋์ ํ๋ฆ / ์ฆ, ์ฝ์ ์ ์๋ ๋ฐ์ดํฐ / (์์, 'ํ์ผ์ ์ฝ์ด์จ๋ค')writable
: ๋ฐ์ดํฐ๋ฅผ โก๏ธ ํ์ผ์ ์ ์ฅํ ๋์ ํ๋ฆ / ์ฆ, (์ด๋ ํ ํ์ผ์) ์ ์ฅ๊ฐ๋ฅํ ๋ฐ์ดํฐ๋ฅผ ์ง์นญ / (์์, 'ํ๋๋์คํฌ์ ๋ฎ์ด์ด๋ค, ํ์ผ์ ์ด๋ค')๋ฌผ๋ ๋ฐฉ์ ๋น์
// like below
req.on('error', errorHandler()=>{})
req.on('end', endHandelr()=>{})
ํ์ดํ
: (์คํธ๋ฆผ๋ผ๋ฆฌ ์ฐ๊ฒฐํ๋ ๊ฒ) / ์ด๋ค ๊ฒ์ ์ถ๋ ฅ์ โก๏ธ ๋ค๋ฅธ ๊ฒ์ ์
๋ ฅ์ผ๋ก ์ฌ์ฉํ ๋ ์ฌ์ฉํ๋ '์ผ์ข
์ ๋นจ๋' / ์ธํฐ๋ท ์์ฒญ์ผ๋ก ๋ฐ์ ๋ฐ์ดํฐ๋ฅผ โก๏ธ ์
๋ ฅ์ฒ๋ผ ์ฌ์ฉํ๋ ๊ฒ / (์, ์๋ฒ๊ฐ ์ธํฐ๋ท์ ๋ฐ์ดํฐ๋ฅผ ์ถ๋ ฅ โก๏ธ ๋์ ์ฝ๋๊ฐ ๊ทธ ๋ฐ์ดํฐ๋ฅผ ์
๋ ฅ์ผ๋ก ๋ฐ์์ ์ฌ์ฉ!ํ๋ ๊ฒ๊ณผ ๊ฐ์ ์๋ฆฌ) path๋ชจ๋์ ์ ์ ๋ฆฌํด๋์ ๊ฐ๋ฐ์๋ ๋ธ๋ก๊ทธ ๐๏ธ ์ฌ๊ธฐ๋ฅผ ์ฐธ๊ณ
path ๋ชจ๋์ ์ด์์ฒด์ ๋ณ๋ก, ๊ฒฝ๋ก ๊ตฌ๋ถ์๊ฐ ๋ฌ๋ผ์ ๋ฐ์ํ๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ๋ฑ์ฅ
...path
: string type / A sequence of path segments : ์ผ๋ จ์ path ๊ตฌํhttps://p-iknow.netlify.app/node-js/path-moudle/__filename
, __dirname
๐ฏ๏ธ__filename
, __dirname
์ ์คํ์, ํ์ฌ ํ์ผ๋ช
, ํ์ผ ๊ฒฝ๋ก๋ก ๋ณ๊ฒฝ__filename
: __filename ์ file๋ช
์ ํฌํจํ ์ ๋ ๊ฒฝ๋ก /
__dirname
: __dirname ์ file๋ช
์ ์ ์ธํ ์ ๋ ๊ฒฝ๋ก / ํ์ฌ ๋ชจ๋์ ๋๋ ํ ๋ฆฌ ์ด๋ฆ ( =path.dirname(__filename) )
JSON.parse()
: JSON๋ฌธ์์ด์ ํ์ฑํด์ JS ๊ฐ์ฒด๋ก ๋ณํ
JSON.stringfy
: JS ๊ฐ์ฒด๋ฅผ JSON๋ฌธ์์ด๋ก ๋ณํ
์ถ์ฒ : https://p-iknow.netlify.app/node-js/path-moudle/๐๏ธ