commit message ์ค์ ์ฝํ
์คํฐ๋ ์งํ์ค commit message ๋ฅผ ์ปจ๋ฒค์
์ ์ด๊ธ๋๊ฒ ์์ฑํ๊ฑธ ๋ชจ๋ฅด๊ณ push๊น์ง ์งํ ํด๋ฒ๋ ธ๋ค..๐ ๊ฐ์ ์ค์๋ฅผ ๋ฐ๋ณตํ์ง ์๊ธฐ์ํด ํ ๋ฆฌ๋๋๊ป์ ์๋ ค์ฃผ์ ๋ฐฉ๋ฒ์ ๊ธฐ๋กํ์!!!!!!!! git log commit ํ์คํ ๋ฆฌ๋ฅผ ์กฐํํ๋ ๋ช
๋ น์ด git commit --amend git commit --amend ์
๋ ฅ ์ ๊ฐ์ฅ ์ต๊ทผ ์ปค๋ฐ ๋ด์ฉ์ ๋ณ๊ฒฝํ ์ ์๋ค. ์ฌ๊ธฐ์ i ๋ฅผ ๋๋ฌ์ฃผ๋ฉด INSERT ๋ชจ๋๊ฐ ๋๊ณ ์ด๋ ๋งจ์์ ์๋ commit message๋ฅผ ์์ ํ ์ ์๋ค. ์ํ๋ ๋๋ก ์์ ํ์ผ๋ฉด esc ๋๋ฅด๊ณ :wq! ์
๋ ฅ git log๋ฅผ ํ์ธํด ์ค๋ค. git log --oneline(๋ก๊ทธ๋ฅผ ํ์ค๋ก ํํ) ์ ์ด์ฉํด ์ ๋๋ก ๋ณ๊ฒฝ์ด ๋์๋์ง ํ์ธํด์ค๋ค. push ์งํ..
FE๋ฅผ ํฅํดโโ
์๋ฐ์คํฌ๋ฆฝํธ ์์ง์ ์ฐ์ฐ ๊ณผ์ ๐ป ์ฐ์ ์๋ฐ์คํฌ๋ฆฝํธ์ 10 + 20 ์ ์งํํ ๋์ ์์๋ถํฐ ์์๋ณด์. ์๋ฐ์คํฌ๋ฆฝํธ ์์ง์ 10 + 20 ์ด๋ผ๋ ์ฝ๋๋ฅผ ๊ณ์ฐํ ๋ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฌ์ฉํด ๋ฐ์ดํฐ๋ฅผ ๊ธฐ์ตํ๊ณ , CPU๋ฅผ ์ฌ์ฉํด ์ฐ์ฐ์ ์งํํ๋ค. ๋ฉ๋ชจ๋ฆฌ๋ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ์ ์๋ ๋ฉ๋ชจ๋ฆฌ ์
์ ์งํฉ์ฒด์ด๋ฉฐ ๋ฉ๋ชจ๋ฆฌ ์
ํ๋์ ํฌ๊ธฐ๋ 1๋ฐ์ดํธ(8๋นํธ), ์ฆ 1๋ฐ์ดํธ ๋จ์๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ฅ, ๋๋ ์ฝ๋ ์์
์ ํ๋ค. ์ปดํจํฐ๋ ํด๋น ๋ฐ์ดํฐ๊ฐ ํ
์คํธ, ์ด๋ฏธ์ง, ์ซ์ ๋ฌด์์ด ๋์๋ ๋ชจ๋ ์์
์ 2์ง์๋ก ์ฒ๋ฆฌํ๊ณ ์ ์ฅํ๋ค. ์ฆ, 10 + 20 ์ ๋ฉ๋ชจ๋ฆฌ ์์ ์์์ ์์น์ ์ ์ฅํ๊ณ CPU๋ ์ด ๊ฐ์ ์ฝ์ด ์ฐ์ฐ์ ์งํํ ํ ๋ฉ๋ชจ๋ฆฌ ์์ ์์์ ์์น์ ๊ฒฐ๊ณผ๊ฐ๋ ์ ์ฅํ๋ค. ์ด? ๊ฒฐ๊ณผ๊ฐ์ธ 30์ ์ด์ฉํ๊ณ ์ถ์๋ฐ... ๐ ์ด๋ ์ด์ฉํ ์ ์๋๊ฒ ๋ฐ๋ก..
โป ํด๋น Deep Dive ๊ธ์ ์๋ฐ์คํฌ๋ฆฝํธ์ ์๋ฆฌ์ ๊ฐ๋
๋ฑ์ ์ฑ
์ ํตํด ๊ณต๋ถํ๋ฉฐ ๋ค์ ํ๋ฒ ๋ณต๊ธฐํ๊ธฐ ์ํด ์ ๋ ๊ธ์ด๋ฏ๋ก ์ฑ
์ ํ๋ฆ์ ๋ฐ๋ผ ์ ๊ฒ๋จ์ ์๋ ค๋๋ฆฌ๋ฉฐ ๋จ์ด์ ๋ํ (ex: ํ๋กํ ํ์
, ๊ฐ์ฒด์งํฅ) ์ค๋ช
์ ์ด ํ ํด๋น ํญ๋ชฉ์ด ๋์ฌ๋ ์์ธํ๊ฒ ์ ๊ณ ์ฌ์ฉํด ๋ณผ ์์ ์
๋๋ค. JavaScript ๐ช ECMAScript๋ ์๋ฐ์คํฌ๋ฆฝํธ์ ํ์ค ์ฌ์์ธ ECMA-262๋ฅผ ๋งํ๋ฉฐ, ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ ๊ฐ, ํ์
, ๊ฐ์ฒด์ ํ๋กํผํฐ, ํจ์, ํ์ค ๋ด์ฅ ๊ฐ์ฒด ๋ฑ ํต์ฌ ๋ฌธ๋ฒ์ ๊ท์ ํ๋ค. ์ฆ, ์๋ฐ์คํฌ๋ฆฝํธ๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ก์ ECMAScript์ ๋ธ๋ผ์ฐ์ ๊ฐ ๋ณ๋ ์ง์ํ๋ DOM,BOM, Canvas, XML, fetch ๋ฑ์ ์์ฐ๋ฅด๋ ๊ฐ๋
์ด๋ค. ๊ต์ฅํ ๋ง์ ๋ด์ฅ ๊ฐ์ฒด์ ์น api์ ๋ํ ๋ด์ฉ์ ๋ณด๊ณ ์ถ์ผ๋ฉด ์ ๋ช
ํ MDN ์ฌ..
const number = 12345; const test = number.toString(); console.log(typeof test); // type = string toString์ ์ซ์ํ์
์ ๋ฌธ์์ด๋ก ๋ณ๊ฒฝํด์ค๋ค. ๋ฌธ์์ด ๋ณ๊ฒฝ ๋ง๊ณ ๋ ํ๊ฐ์ง์ ์ฌ์ฉ๋ฒ์ด ๋ ์๋๋ฐ ๋ฐ๋ก ์ซ์๋ฅผ ์ํ๋ ์ง๋ฒ์ผ๋ก ๋ณ๊ฒฝ์ด ๊ฐ๋ฅํ๋ค. const number = 12; const test = number.toString(2); console.log(typeof test, test); // console.log(string 1100); ํ์
์ ๋์ผํ๊ฒ string์ผ๋ก ๋ณ๊ฒฝ๋๋ฉฐ ํด๋น ์ซ์๋ฅผ 2์ง๋ฒ์ผ๋ก ๋ณ๊ฒฝํด์ value๋ฅผ ๋ฑ๋๋ค. ๋งค๊ฐ๋ณ์(radix) ๋ ์ ํ์ฌํญ์ด๋ฉฐ ์ง๋ฒ์ ๋ณํ๊ฐ ํ์ํ ๋์ ํ์ํ์ง ์์๋๋ฅผ ๊ตฌ๋ถํ์ฌ ์ฌ์ฉํ๋ฉด..
๋ฌธ์ ๋ด์ฉ 3์ง๋ฒ์ด๋? ๐ค ์ฌ๋์ด ์ฌ์ฉํ๋ ๊ฒ์ 10์ง๋ฒ, ์ปดํจํฐ์์๋ 2์ง๋ฒ์ ์ฌ์ฉํ๋ค. 3์ง๋ฒ์ ์ฌ์ฉํ๋ ๊ณณ์ ๋ํด ์ฐพ์๋ดค๋๋ฐ ๋ฑํ ์ ๋ณด๊ฐ ์๋๊ฑฐ๊ฐ๋ค. ์ ์ด์ ์ด ํ์ด๋ 3์ง๋ฒ ๋ฟ๋ง ์๋๋ผ ์ง๋ฒ์ ๋ณ๊ฒฝ์ด ๊ฐ๋ฅํ ๊ฒ์ด๊ธฐ์ ํ์์ ๋ฐ๋ผ ์ฌ์ฉํ๋ฉด ๋ ๊ฑฐ๊ฐ๋ค. ํ์ด ๐โ๏ธ function solution(n) { const convertNumber = n.toString(3).split("").reverse().join(""); const againConvertNumber = parseInt(convertNumber, 3); return againConvertNumber; } /* (ํ์ด) ์ฃผ์ด์ง n ์ toString์ผ๋ก 3์ง๋ฒ์ผ๋ก ๋ณ๊ฒฝํ๊ณ split์ผ๋ก ๊ฐ๊ฐ์ ์์๋ก ๋๋ ์ค ๋ค reverse ๋ฉ์๋๋ก ์..
substr โ // substr(startIndex,length) const str = "์๋
ํ์ธ์"; const substrTest = str.substr(0, 3); console.log(substrTest); //console.log(์๋
ํ) substr์ ์ฌ์ค ์ฌ์ฉ์ ๊ถํ์ง ์๋๋ค. ์ด์ ๋ substr()์ด ํฌํจ๋ ECMA-262 ํ์ค ๋ถ๋ก์ ๋ณธ ๋ถ๋ก์ด ํฌํจํ ๋ชจ๋ ์ธ์ด ๊ธฐ๋ฅ๊ณผ ํ๋์ ํ๋ ์ด์์ ๋ฐ๋์งํ์ง ์์ ํน์ง์ ๊ฐ๊ณ ์์ผ๋ฉฐ ์ฌ์ฉ์ฒ๊ฐ ์์ด์ง ๊ฒฝ์ฐ ๋ช
์ธ์์ ์ ๊ฑฐ๋๋ค๊ณ MDN ์ฌ์ดํธ์์ ์น์ ํ ๊ฒฝ๊ณ ๋ฅผ ๋ด๋ณด๋ด๊ณ ์๊ธฐ๋๋ฌธ์ด๋ค. ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ฉํ
์คํธ ์ฐ์ต ์ค ๋ฐ๊ฒฌํ๊ณ ๋ณ๊ฒฝํ์๋๋ฐ ์๋ง ์ฐ๋ฉด ์ ์ฉํ ๊ฑฐ ๊ฐ์๋ฐ ์กฐ๊ธ ์์ฝ๊ธด ํ๋ค. ์ฌ์ฉ๋ฒ์ ๊ฐ๋จํ๋ค. substr(์์ํ ์ธ๋ฑ์ค, ๊ธธ์ด) ๋ฅผ ์
๋ ฅํด์ฃผ๋ฉด ๊ฐ..
๋ฐ๋ณต๋ฌธ์ด๋ ? ๐คทโ๏ธ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์์ ๋ฐ๋ณต๋ฌธ์ด๋ ์ฃผ์ด์ง ํ์๋งํผ ๋ช
๋ น์ ๋ฐ๋ณตํ์ฌ ์ํํ๋๋ก ์ ์ดํ๋ ์คํ๋ฌธ์ด๋ค. ์ฌ๋ฌ ๋ฐ๋ณต๋ฌธ์ด ์์ง๋ง ์ด ๊ธ์์๋ ์์ฃผ ์ฌ์ฉ๋๋ for, for...of, for...in ์ ๋ํด ์์ฑํ๊ณ ์ ํ๋ค. for โป for(์ด๊ธฐํ์; ์กฐ๊ฑด์; ์ฆ๊ฐ์) { ์คํ๋ฌธ; } // ex) for (i = 0; i < 10; i++) { console.log(i); } // console.log(0,1,2,3,4,5,6,7,8,9) for...in ๐ฉ const num = { one: 1, two: 2, three: 3, four: 4, five: 5, }; for (number in num) { console.log(number); } // console.log(one,two,thr..
๋ฌธ์ ๋ด์ฉ ๐โ๏ธํ์ด function solution(s) { const middleStrIndex = Math.floor(s.length / 2); return s.length % 2 === 0 ? s.substring(middleStrIndex - 1, middleStrIndex + 1) : s.substring(middleStrIndex, middleStrIndex + 1); } /* (ํ์ด) ๋ฌธ์์ด s์ length๋ฅผ ๋ฐ์ผ๋ก ๋๋์ด ๋ณ์์ ์ ์ฅํ๊ณ index๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ฌธ์์ด์ ์๋ผ๋ด๋ substring(start, end) ๋ด์ฅ๋ฉ์๋๋ฅผ ์ด์ฉํด s.length๊ฐ ์ง์์ผ ๊ฒฝ์ฐ ๊ฐ์ด๋ฐ 2๊ฐ์ ๋ฌธ์์ด, ํ์์ผ ๊ฒฝ์ฐ ๊ฐ์ด๋ฐ ๋ฌธ์์ด 1๊ฐ๋ฅผ ๋ฐํํ๋ค. **substring์ end์ ์ด์ ๊น์ง ๋ฐํํ๋ฏ๋ก e..