๋ชฉ๋ก2022/01/04 (13)
whatisthis?
DreamCoding JavaScript Lecture REFERENCE LECTURE https://www.youtube.com/watch?v=wcsVjmHrUQg&list=PLv2d7VI9OotTVOL4QmPfvJWPJvkmv6h-2 #1. ์๋ฐ์คํฌ๋ฆฝํธ์ ์ญ์ฌ
1์ฐจ์ ๋ฐฐ์ด - (7) ๐ก๋ฌธ์ ๋ํ์ ์๋ด๊ธฐ๋ค์ 90%๋ ์์ ์ด ๋ฐ์์ ํ๊ท ์ ๋๋๋ค๊ณ ์๊ฐํ๋ค. ๋น์ ์ ๊ทธ๋ค์๊ฒ ์ฌํ ์ง์ค์ ์๋ ค์ค์ผ ํ๋ค. ๐์ ๋ ฅ ์ฒซ์งธ ์ค์๋ ํ ์คํธ ์ผ์ด์ค์ ๊ฐ์ C๊ฐ ์ฃผ์ด์ง๋ค. ๋์งธ ์ค๋ถํฐ ๊ฐ ํ ์คํธ ์ผ์ด์ค๋ง๋ค ํ์์ ์ N(1 ≤ N ≤ 1000, N์ ์ ์)์ด ์ฒซ ์๋ก ์ฃผ์ด์ง๊ณ , ์ด์ด์ N๋ช ์ ์ ์๊ฐ ์ฃผ์ด์ง๋ค. ์ ์๋ 0๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ๊ณ , 100๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์ ์์ด๋ค. ๐์ถ๋ ฅ ๊ฐ ์ผ์ด์ค๋ง๋ค ํ ์ค์ฉ ํ๊ท ์ ๋๋ ํ์๋ค์ ๋น์จ์ ๋ฐ์ฌ๋ฆผํ์ฌ ์์์ ์ ์งธ ์๋ฆฌ๊น์ง ์ถ๋ ฅํ๋ค. ์์ ์ ๋ ฅ 5 5 50 50 70 80 100 7 100 95 90 80 70 60 50 3 70 90 80 3 70 90 81 9 100 99 98 97 96 95 94 93 91 ์์ ์ถ๋ ฅ 40.000% ..
1์ฐจ์ ๋ฐฐ์ด - (6) ๐ก๋ฌธ์ "OOXXOXXOOO"์ ๊ฐ์ OXํด์ฆ์ ๊ฒฐ๊ณผ๊ฐ ์๋ค. O๋ ๋ฌธ์ ๋ฅผ ๋ง์ ๊ฒ์ด๊ณ , X๋ ๋ฌธ์ ๋ฅผ ํ๋ฆฐ ๊ฒ์ด๋ค. ๋ฌธ์ ๋ฅผ ๋ง์ ๊ฒฝ์ฐ ๊ทธ ๋ฌธ์ ์ ์ ์๋ ๊ทธ ๋ฌธ์ ๊น์ง ์ฐ์๋ O์ ๊ฐ์๊ฐ ๋๋ค. ์๋ฅผ ๋ค์ด, 10๋ฒ ๋ฌธ์ ์ ์ ์๋ 3์ด ๋๋ค. "OOXXOXXOOO"์ ์ ์๋ 1+2+0+0+1+0+0+1+2+3 = 10์ ์ด๋ค. OXํด์ฆ์ ๊ฒฐ๊ณผ๊ฐ ์ฃผ์ด์ก์ ๋, ์ ์๋ฅผ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ๐์ ๋ ฅ ์ฒซ์งธ ์ค์ ํ ์คํธ ์ผ์ด์ค์ ๊ฐ์๊ฐ ์ฃผ์ด์ง๋ค. ๊ฐ ํ ์คํธ ์ผ์ด์ค๋ ํ ์ค๋ก ์ด๋ฃจ์ด์ ธ ์๊ณ , ๊ธธ์ด๊ฐ 0๋ณด๋ค ํฌ๊ณ 80๋ณด๋ค ์์ ๋ฌธ์์ด์ด ์ฃผ์ด์ง๋ค. ๋ฌธ์์ด์ O์ X๋ง์ผ๋ก ์ด๋ฃจ์ด์ ธ ์๋ค. ๐์ถ๋ ฅ ๊ฐ ํ ์คํธ ์ผ์ด์ค๋ง๋ค ์ ์๋ฅผ ์ถ๋ ฅํ๋ค. ์์ ์ ๋ ฅ 5 OOXXOXXOOO OOXXOOXXOO OXOX..
String ๊ด๋ จ Method ๋ชฉ์ฐจ ** https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String String - JavaScript | MDN String ์ ์ญ ๊ฐ์ฒด๋ ๋ฌธ์์ด(๋ฌธ์์ ๋์ด)์ ์์ฑ์์ ๋๋ค. developer.mozilla.org charAt() includes() indexOf() / lastIndexOf() match() / matchAll() padEnd() / padStart() raw() repeat() replace() / replaceAll() search() toLowerCase() / toUpperCase() trim() / trimEnd() / trimStart() valueO..
1์ฐจ์ ๋ฐฐ์ด - (5) ๐ก๋ฌธ์ ์ธ์ค์ด๋ ๊ธฐ๋ง๊ณ ์ฌ๋ฅผ ๋ง์ณค๋ค. ์ธ์ค์ด๋ ์ ์๋ฅผ ์กฐ์ํด์ ์ง์ ๊ฐ์ ธ๊ฐ๊ธฐ๋ก ํ๋ค. ์ผ๋จ ์ธ์ค์ด๋ ์๊ธฐ ์ ์ ์ค์ ์ต๋๊ฐ์ ๊ณจ๋๋ค. ์ด ๊ฐ์ M์ด๋ผ๊ณ ํ๋ค. ๊ทธ๋ฆฌ๊ณ ๋์ ๋ชจ๋ ์ ์๋ฅผ ์ ์/M*100์ผ๋ก ๊ณ ์ณค๋ค. ์๋ฅผ ๋ค์ด, ์ธ์ค์ด์ ์ต๊ณ ์ ์ด 70์ด๊ณ , ์ํ์ ์๊ฐ 50์ด์์ผ๋ฉด ์ํ์ ์๋ 50/70*100์ด ๋์ด 71.43์ ์ด ๋๋ค. ์ธ์ค์ด์ ์ฑ์ ์ ์์ ๋ฐฉ๋ฒ๋๋ก ์๋ก ๊ณ์ฐํ์ ๋, ์๋ก์ด ํ๊ท ์ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ๐์ ๋ ฅ ์ฒซ์งธ ์ค์ ์ํ ๋ณธ ๊ณผ๋ชฉ์ ๊ฐ์ N์ด ์ฃผ์ด์ง๋ค. ์ด ๊ฐ์ 1000๋ณด๋ค ์๊ฑฐ๋ ๊ฐ๋ค. ๋์งธ ์ค์ ์ธ์ค์ด์ ํ์ฌ ์ฑ์ ์ด ์ฃผ์ด์ง๋ค. ์ด ๊ฐ์ 100๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ด ์๋ ์ ์์ด๊ณ , ์ ์ด๋ ํ๋์ ๊ฐ์ 0๋ณด๋ค ํฌ๋ค. ๐์ถ๋ ฅ ์ฒซ์งธ ์ค์ ์๋ก์ด ํ๊ท ์ ์ถ๋ ฅํ๋ค..
1์ฐจ์ ๋ฐฐ์ด - (4) ๐ก๋ฌธ์ ๋ ์์ฐ์ A์ B๊ฐ ์์ ๋, A%B๋ A๋ฅผ B๋ก ๋๋ ๋๋จธ์ง ์ด๋ค. ์๋ฅผ ๋ค์ด, 7, 14, 27, 38์ 3์ผ๋ก ๋๋ ๋๋จธ์ง๋ 1, 2, 0, 2์ด๋ค. ์ 10๊ฐ๋ฅผ ์ ๋ ฅ๋ฐ์ ๋ค, ์ด๋ฅผ 42๋ก ๋๋ ๋๋จธ์ง๋ฅผ ๊ตฌํ๋ค. ๊ทธ ๋ค์ ์๋ก ๋ค๋ฅธ ๊ฐ์ด ๋ช ๊ฐ ์๋์ง ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ๐์ ๋ ฅ ์ฒซ์งธ ์ค๋ถํฐ ์ด๋ฒ์งธ ์ค ๊น์ง ์ซ์๊ฐ ํ ์ค์ ํ๋์ฉ ์ฃผ์ด์ง๋ค. ์ด ์ซ์๋ 1,000๋ณด๋ค ์๊ฑฐ๋ ๊ฐ๊ณ , ์์ด ์๋ ์ ์์ด๋ค. ๐์ถ๋ ฅ ์ฒซ์งธ ์ค์, 42๋ก ๋๋์์ ๋, ์๋ก ๋ค๋ฅธ ๋๋จธ์ง๊ฐ ๋ช ๊ฐ ์๋์ง ์ถ๋ ฅํ๋ค. ์์ ์ ๋ ฅ 39 40 41 42 43 44 82 83 84 85 ์์ ์ถ๋ ฅ 6 ๊ฐ ์๋ฅผ 42๋ก ๋๋ ๋๋จธ์ง๋ 39, 40, 41, 0, 1, 2, 40, 41, 0, 1์ด๋ค...
Array.indexOf() - indexOf() ๋ฉ์๋๋ ๋ฐฐ์ด์์ ์ง์ ๋ ์์๋ฅผ ์ฐพ์ ์ ์๋ ์ฒซ ๋ฒ์งธ ์ธ๋ฑ์ค๋ฅผ ๋ฐํํ๊ณ , ์กด์ฌํ์ง ์์ผ๋ฉด -1์ ๋ฐํํจ. SYNTAX arr.indexOf(searchElement[, fromIndex]) ๋งค๊ฐ๋ณ์ searchElement ๋ฐฐ์ด์์ ์ฐพ์ ์์ fromIndex (Optional) ๊ฒ์์ ์์ํ ์์ธ(index) -> ์๋ต์ 0๋ฒ์ง๋ถํฐ ๊ฒ์ํจ. cf. String.indexOf() ๋ฐฐ์ด ๋ฟ๋ง ์๋๋ผ String(๋ฌธ์์ด)์์๋ ์ฃผ์ด์ง ๊ฐ๊ณผ ์ผ์นํ๋ ์ฒซ ๋ฒ์งธ ์ธ๋ฑ์ค๋ฅผ ๋ฐํํ ์ ์์. ๋ง์ฐฌ๊ฐ์ง๋ก ์ผ์นํ๋ ๊ฐ์ด ์์ผ๋ฉด -1์ ๋ฐํ. ** ๋ง์ฝ ()์์ ์๋ฌด๊ฐ๋ ์ฃผ์ด์ง์ง ์์ผ๋ฉด undefined๋ฅผ ์ฐพ์ผ๋ ค๋ ๋ฌธ์์ด๋ก ์ฌ์ฉํจ. ** ๋ง์ฝ fromIndex >= st..
Array.forEach() - forEach()๋ฉ์๋๋ ์ฃผ์ด์ง ํจ์๋ฅผ ๋ฐฐ์ด ์์ ๊ฐ๊ฐ์ ๋ํด ์คํํจ. SYNTAX arr.forEach(callback(currentvalue[, index[, array]])[, thisArg]) ๋งค๊ฐ๋ณ์ callback ํจ์ : ๊ฐ ์์์ ๋ํด ์คํํ ํจ์. ๋ค์ ์ธ ๊ฐ์ง ๋งค๊ฐ๋ณ์๋ฅผ ๋ฐ์ต๋๋ค. currentValue ์ฒ๋ฆฌํ ํ์ฌ ์์. index Optional ์ฒ๋ฆฌํ ํ์ฌ ์์์ ์ธ๋ฑ์ค. array Optional forEach()๋ฅผ ํธ์ถํ ๋ฐฐ์ด. thisArg Optional callback์ ์คํํ ๋ this๋ก ์ฌ์ฉํ ๊ฐ. - forEach()๋ ์ฃผ์ด์ง callback์ ๋ฐฐ์ด์ ์๋ ๊ฐ ์์์ ๋ํด ์ค๋ฆ์ฐจ์์ผ๋ก ํ ๋ฒ์ฉ ์คํํจ. - ์์ ๊ฐ / ์์ ์ธ๋ฑ์ค /..
Array ๊ด๋ จ Method ๋ชฉ์ฐจ ** https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array Array - JavaScript | MDN JavaScript Array ์ ์ญ ๊ฐ์ฒด๋ ๋ฐฐ์ด์ ์์ฑํ ๋ ์ฌ์ฉํ๋ ๋ฆฌ์คํธ ํํ์ ๊ณ ์์ค ๊ฐ์ฒด์ ๋๋ค. developer.mozilla.org isArray() find() findIndex() includes() indexOf() / lastIndexOf() every() filter() forEach() map() reduce() / reduceRight() from() slice() pop() / push() shift() / unshift() keys() / valu..
1์ฐจ์ ๋ฐฐ์ด - (3) ๐ก๋ฌธ์ ์ธ ๊ฐ์ ์์ฐ์ A, B, C๊ฐ ์ฃผ์ด์ง ๋ A × B × C๋ฅผ ๊ณ์ฐํ ๊ฒฐ๊ณผ์ 0๋ถํฐ 9๊น์ง ๊ฐ๊ฐ์ ์ซ์๊ฐ ๋ช ๋ฒ์ฉ ์ฐ์๋์ง๋ฅผ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ์๋ฅผ ๋ค์ด A = 150, B = 266, C = 427 ์ด๋ผ๋ฉด A × B × C = 150 × 266 × 427 = 17037300 ์ด ๋๊ณ , ๊ณ์ฐํ ๊ฒฐ๊ณผ 17037300 ์๋ 0์ด 3๋ฒ, 1์ด 1๋ฒ, 3์ด 2๋ฒ, 7์ด 2๋ฒ ์ฐ์๋ค. ๐์ ๋ ฅ ์ฒซ์งธ ์ค์ A, ๋์งธ ์ค์ B, ์ ์งธ ์ค์ C๊ฐ ์ฃผ์ด์ง๋ค. A, B, C๋ ๋ชจ๋ 100๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ๊ณ , 1,000๋ณด๋ค ์์ ์์ฐ์์ด๋ค. ๐์ถ๋ ฅ ์ฒซ์งธ ์ค์๋ A × B × C์ ๊ฒฐ๊ณผ์ 0 ์ด ๋ช ๋ฒ ์ฐ์๋์ง ์ถ๋ ฅํ๋ค. ๋ง์ฐฌ๊ฐ์ง๋ก ๋์งธ ์ค๋ถํฐ ์ด ๋ฒ์งธ ์ค๊น์ง A × B × C์ ๊ฒฐ๊ณผ์..