Code Structure๋ ๋ง ๊ทธ๋๋ก ์ง์ญํ๋ฉด ์ฝ๋๊ตฌ์กฐ๋ผ๋ ๋ป์ด๋ค.
Javascript์ ์ฃผ์ํ ์ฝ๋ ๊ตฌ์กฐ ์์๋ ์๋์ ๊ฐ๋ค
1.๋ฌธ(Statement)
2.์ธ๋ฏธ์ฝ๋ก (Semicolon)
3.์ฃผ์(Comment)
4.๋ธ๋ก(Blocks)
5.ํจ์(Functions)
๋ฌธ(statement)์ ํ๋ก๊ทธ๋จ์์ ์คํ๋๋ ๊ฐ๊ฐ์ ๋ช
๋ น์ด๋ปํฉ๋๋ค.
๋ฌธ์ ์ข
๋ฅ์๋ ์กฐ๊ฑด๋ฌธ,๋ฐ๋ณต๋ฌธ, ํจ์ ์ ์ธ๋ฌธ,ํ ๋น๋ฌธ ๋ฑ๋ฑ... ์๋ฐ์คํฌ๋ฆฝํธ์ ๋น ์ง์ ์๋ ๊ตฌ์กฐ์
๋๋ค.
๋ฌธ์ ์ผ๋ จ์ ๋์์ ์ ์ํ๊ณ , ํ๋ก๊ทธ๋จ์ ํ๋ฆ์ ๊ฒฐ์ ํฉ๋๋ค. ์๋ฐ์คํฌ๋ฆฝํธ์์์ ๋ฌธ์ ๋๋งบ์์ ์ธ๋ฏธ์ฝ๋ก ์ผ๋ก ๋ํ๋ ๋๋ค.
์ธ๋ฏธ์ฝ๋ก (semicolon)์ ๊ตฌ๋ฌธ์ ์ข
๋ฃ๋ฅผ ๋ํ๋
๋๋ค.
์๋ฐ์คํฌ๋ฆฝํธ์์ ์ธ๋ฏธ์ฝ๋ก (;) ํ์ ์ฌํญ์ด ์๋๋ผ๊ณ ํ๋๋ฐ์
alert('Hello')
alert('World')
์ด์ ๊ฐ์ด ์๋ฐ์คํฌ๋ฆฝํธ๋ ์ค๋ฐ๊ฟ์ด ์๋ค๋ฉด '์์์ '์ผ๋ก ์ธ๋ฏธ์ฝ๋ก ์ด ์๋ค๊ณ ํด์ํ์ฌ ๋ค์ ๊ตฌ๋ฌธ์ ํด์ํฉ๋๋ค.
โํ์ง๋ง, ์ค๋ฐ๊ฟ์ด 'ํญ์' ์์์ ์ธ๋ฏธ์ฝ๋ก ์ผ๋ก ํด์ํ์ง์๋๋ฐ์ ๊ทธ ์๋ ์๋์ ๊ฐ์ต๋๋ค.
alert("์๋ฌ๊ฐ ๋ฐ์ํฉ๋๋ค.")
[1, 2].forEach(alert)
์์ ์ ๋ณด์ด๋๊ฒ์ฒ๋ผ ์ด ์ฝ๋๋ ์คํํ์๋ ์๋ฌ๊ฐ ๋ฐ์ํฉ๋๋ค. ๊ทธ ์ด์ ๋ ์๋ฐ์คํฌ๋ฆฝํธ๋ ๋๊ดํธ ์์๋ ์ธ๋ฏธ์ฝ๋ก ์ด ์๋ค๊ณ ๊ฐ์ ํ์ง์๊ธฐ ๋๋ฌธ์ ์๋ฌ๊ฐ ๋ฐ์ํฉ๋๋ค.
์ด์ฒ๋ผ ์ธ๋ฏธ์ฝ๋ก ์ด ์๋์ฝ์ ์ด ์ผ์ด๋์ง ์๋ ๊ฒฝ์ฐ๋ ์๊ธฐ ๋๋ฌธ์ ๊ตฌ๋ฌธ์ด ๋๋๋ ๊ฒฝ์ฐ ์ธ๋ฏธ์ฝ๋ก ์ ๋ถ์ฌ์ฃผ๋๊ฒ์ด ์ข์ต๋๋ค.
๋ฌผ๋ก ์์ ์์ ๋๋ฌธ๋ง์ ์๋๋ผ ์๋ฐ์คํฌ๋ฆฝํธ ๊ท์น์์๋ ๊ถ์ฅํ๊ธฐ๋ ํ๊ณ ์ฝ๋์ ์์ ์ฑ๊ณผ ๊ฐ๋ ์ฑ์ ๋์ด๊ธฐ ์ํด์๋ผ๋ ๊ตฌ๋ฌธ์ด ๋๋๋ ๋ถ๋ถ์ ์ธ๋ฏธ์ฝ๋ก ์ผ๋ก ๋ง๋ฌด๋ฆฌ ํด์ฃผ๋๊ฒ ์ข์ต๋๋ค.
์ฃผ์(Comment)์ ์ฝ๋์์ ์คํ๋์ง์๊ณ , ์ฝ๋๋ฅผ ์ค๋ช ํ๊ฑฐ๋ ๋ฉ๋ชจํ๋๊ฒ์ผ๋ก ์ฌ์ฉํ๋ ํ ์คํธ์ ๋๋ค.
๐์ฃผ์์ ์ ํ์ผ๋ก๋
1.ํ ์ค์ง๋ฆฌ ์ฃผ์
//์ฃผ์ ์ฒ๋ฆฌํ ํ,๋ฌธ์ฅ
2.์ฌ๋ฌ ์ค์ ์ฃผ์
/*์ฃผ์ ์ฒ๋ฆฌํ ํ, ๋ฌธ์ฅ*/
ํ ์ค ์ฃผ์์ '//' ์ด ํ ๋ค์ ๋์ค๋ ์ฝ๋๋ค์ ์ ๋ถ ์ฃผ์์ฒ๋ฆฌ๊ฐ ๋๊ธฐ๋๋ฌธ์ ์๋์ ๊ฐ์ด ์ฌ์ฉ๊ฐ๋ฅํฉ๋๋ค.
console.log('Hi') //์ฃผ์์ผ๋ก ์ฒ๋ฆฌ๋๋ ์ฝ๋
์ด ์ฒ๋ผ ์ฌ๋ฌ ๋ฐฉ๋ฒ์ ์ฃผ์ ์ฒ๋ฆฌ๊ฐ ์์ง๋ง ์ฃผ์์์ ์ค์ฒฉ์ฃผ์์ ์ฌ์ฉํ ์ ์์ต๋๋ค.โ
/*
/* ์ค์ฒฉ ์ฃผ์ ?!? */
*/
๋ฌผ๋ก ์ค์ฒฉ์ฃผ์์ ๊ฐ๋ฅํ๊ฒํ๋ VScode extension์ด ์์ง๋ง ์ ๋ ๋น์ถํฉ๋๋น..โโ
์ด์ฒ๋ผ ์ฃผ์์ ์ฝ๋์ ๊ฐ๋ ์ฑ์ ๋์ฌ์ฃผ๊ธฐ ์ํด ๋ง์ด ์ฐ์ด์ง๋ง ๋๋ฌด ๋จ๋ฐํ๋ฉด ์คํ๋ ค ๊ฐ๋ ์ฑ์ ํค์น ์ ์์ผ๋ ์ฃผ์ํด์ผ๊ฒ ๋ค.
โ์ฃผ์์ ์ฝ๋๋ฅผ ์ค๋ช
ํ๊ฑฐ๋ ๋จ์ํ ๋ฉ๋ชจ๋ง ํ๋๊ฒ์ด ์๋๋ผ ์ฝ๋๋ฅผ ์์๋ก ๋นํ์ฑํ ์์ผ์ ๋๋ฒ๊น
์ ์ ์ฉํ๊ฒ ์ธ ์ ์์.
๋ธ๋ก(Blocks)์ ์ค๊ดํธ์ ๊ฐ์ธ์ง ์ฝ๋์ ๊ทธ๋ฃน์ ๋ธ๋ก์ด๋ผ๊ณ ํฉ๋๋ค. ๋ธ๋ก{}์ ์ค๊ดํธ ๋ด์ ์ฌ๋ฌ๋ฌธ์ ๊ทธ๋ฃนํํ์ฌ ์ฝ๋์ ๋ฒ์๋ฅผ ๊ฒฐ์ ํฉ๋๋ค
โ โ ๋ธ๋ก์ ์์ ๋ ์กฐ๊ฑด๋ฌธ,๋ฐ๋ณต๋ฌธ,ํจ์,,๋ฑ๋ฑ์ด ๋ง์ง๋ง ์์ง ๋ฐฐ์ฐ์ง ์์ ๊ฐ๋จํ๊ฒ ์ค๋ช ํ๊ณ ๋์ด๊ฐ๊ฒ ์ต๋๋ค.
ํจ์(Functions)๋ ํ๋์ ํน๋ณํ ๋ชฉ์ ์ ์์ ์ ์ํํ๋๋ก ์ค๊ณ๋ ๋ ๋ฆฝ์ ์ธ ๋ธ๋ก์ ์๋ฏธํฉ๋๋ค.
function functionName(parameters) {
// ํจ์ ๋ณธ๋ฌธ
// ์ฌ๋ฌ ๋ฌธ๊ณผ ํํ์์ด ์ฌ๊ธฐ์ ํฌํจ๋ ์ ์์ต๋๋ค.
return result; // ํจ์๊ฐ ๊ฐ์ ๋ฐํํ ์๋ ์์ต๋๋ค.
}
function: ํจ์ ์ ์ ํค์๋์ ๋๋ค.
functionName: ํจ์์ ์ด๋ฆ์ ๋ํ๋ ๋๋ค. ํจ์ ์ด๋ฆ์ ์๋ณ์(identifier)๋ก, ํจ์๋ฅผ ํธ์ถํ ๋ ์ฌ์ฉ๋ฉ๋๋ค.
parameters: ํจ์๊ฐ ๋ฐ๋ ์ ๋ ฅ ๊ฐ์ ๋๋ค. ํจ์๋ฅผ ํธ์ถํ ๋ ์ธ์(argument)๋ก ์ ๋ฌ๋ฉ๋๋ค.
ํจ์ ๋ณธ๋ฌธ: ์ค๊ดํธ {}๋ก ๋๋ฌ์ธ์ธ ๋ถ๋ถ์ผ๋ก, ํจ์๊ฐ ์คํ๋ ๋ ์ํ๋๋ ์ฝ๋๋ฅผ ํฌํจํฉ๋๋ค.
return: ํจ์๊ฐ ๊ฐ์ ๋ฐํํ ๋ ์ฌ์ฉํ๋ ํค์๋์ ๋๋ค. ํจ์๊ฐ ๊ฐ์ ๋ฐํํ์ง ์์ ์๋ ์์ต๋๋ค.
๐chatGPT ์ ๋์ค๋ ์๋ฌธ
โ โ ์ด์ ํจ์ ๋ถ๋ถ๋ ์์ง ๋ฐฐ์ฐ์ง ์์๊ธฐ์ ์ฌ๊ธฐ๊น์งํ๊ณ ๋ง๋ฌด๋ฆฌํ๊ฒ ์ฉ๋๋ค. โ โ
๐์ฐธ๊ณ ์ฌ์ดํธ
๐chatGPT
๐Javascript info
๐์ฌ๋ฌ ๋ธ๋ก๊ทธ ํฌ์คํ
๊ธ,,,