function solution(my_string) { return eval(my_string); } function solution(my_string) { let result = 0; my_string = my_string.split(" ").filter((v) => v !== "+"); for (let i = 0; i < my_string.length; i++) { if (my_string[i] === "-") { result -= parseInt(my_string[i + 1] * 2); } else { result += parseInt(my_string[i]); } } return result; } /* (ํ์ด) 1. eval ๋ฉ์๋๋ฅผ ์ด์ฉํด ๋ฌธ์์ด์ ๊ณ์ฐ 2. ๊ณต๋ฐฑ์ผ๋ก ์์๋ฅผ ๋๋ ์ฃผ๊ณ filter..
FE๋ฅผ ํฅํดโโ
function setSortAndFliter(arr, arr2) { return arr.sort((a, b) => a - b).filter((v) => !arr2.includes(v)); } function solution(n, lost, reserve) { const noPeClothesStudent = setSortAndFliter(lost, reserve); const extraPeClothesStudent = setSortAndFliter(reserve, lost); for (const el of noPeClothesStudent) { const extraUniformidx = extraPeClothesStudent.findIndex( (value) => value === el - 1 || va..
ํ๊ณ ์กฐ ์คํฐ๋ ๋ ํฌ์์ ํ์๋ถ์ด ์ค์๋ก PR์ ๋จธ์งํ๋ ์ํฉ์ด ๋ฐ์. ํด๊ฒฐ๋ฒ์ ๊ตฌ๊ธ๋งํ๋ค ๊ฒฐ๊ตญ ๋จ์์๋ PR์ ์ ๋ถ ๋จธ์งํ๊ณ ํ์๋ชจ๋ pull์ ๋ฐ์ ๋ค์ ์ฑํฌ๋ฅผ ๋ง์ถฐ์ฃผ์๋ค. revert๋ฅผ ์ด์ฉํ๋ฉด ํด๋น ์ปค๋ฐ์ ๋ฌดํจ๋ก ๋ง๋ค ์ ์๋คํ์ฌ ์ฐพ์๋ณด์๊ณ ์ง์ ์ค์ตํด๋ณด์. ์ผ๋จ test1 ๋ธ๋์น๋ฅผ ๋ง๋ค๊ณ pr์ ๋ ๋ ค์ฃผ์๋ค. ์ด์ด์ test2 ๋ธ๋์น ์์ฑ ํ pr์ ๋๊ฐ์ด ๋ ๋ ค์ฃผ๊ณ test1 PR์ ๋จธ์ง ๋ฒํผ์ ๋๋ฌ ๋ณํฉ ์์ผ์ค๋ค. main ๋ธ๋์น ์ปค๋ฐ๋ด์ญ์ ๋ณด๋ฉด 3๊ฐ์ ์ปค๋ฐ๊ณผ ๋จธ์ง ์ปค๋ฐ์ด ๋จ์์๋ค. ๋ด๊ฐ ๋์๊ฐ๊ณ ์ถ์ ์์ ์ ์ด์ ์ปค๋ฐ ํ
์คํธ #2 ๋ถ๋ถ์ด๋ค. main ๋ธ๋์น๋ก ์ด๋ ํ ์๊ฒฉ ์ ์ฅ์ ๋ด์ฉ์ pull๋ก ๋ฐ์์ค๊ณ git log๋ก ํ์ธํด๋ดค๋ค. ์ ์ผ ์ต๊ทผ ์ปค๋ฐ์ธ ์๋จ Merge ๋ฅผ ํ์ธํด ๋ณด๋ฉด ๋๊ฐ์ ํ..
this ๋? this๋ ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์์ ์ฌ์ฉํ๋ ํค์๋์ด๋ฉฐ ์ด๋ this๋ ํด๋น ์ฝ๋๋ฅผ ์คํํ๋ ํด๋์ค์ ์ธ์คํด์ค๋ฅผ ๋ํ๋ธ๋ค. ์๋ฐ์คํฌ๋ฆฝํธ์์์ this๋ ์กฐ๊ธ ๋ค๋ฅด๋ค. ์๋ฐ์คํฌ๋ฆฝํธ์ this๋ ์์ ์ด ์ํ ๊ฐ์ฒด ๋๋ ์์ ์ด ์์ฑํ ์ธ์คํด์ค๋ฅผ ๊ฐ๋ฆฌํค๋ ์๊ธฐ ์ฐธ์กฐ ๋ณ์์ด๋ค. this๋ฅผ ํตํด ์์ ์ด ์ํ ๊ฐ์ฒด๋ ์์ฑํ ์ธ์คํด์ค์ ํ๋กํผํฐ๋ ๋ฉ์๋๋ฅผ ์ฐธ์กฐํ ์ ์๋ค. this์ ๋ฐ์ธ๋ฉ function sayName() { const name = 'yunCow' console.log(this.name) } sayName(); // ? ์ฝ๋๋ง ๋ฑ ๋ดค์๋ console.log์ 'yunCow'๋ฅผ ๋ณด์ฌ์ค ๊ฒ์ผ๋ก ๋ณด์ธ๋ค. ํ์ง๋ง ๊ทธ๋ ์ง ์๋ค. ์๋ฐ์คํฌ๋ฆฝํธ์์์ this๊ฐ ์ฐธ์กฐํ๋ ๊ฒ์ ํจ์์ ํธ์ถ ๋ฐฉ์์..
Learned flat๋ฉ์๋๋ฅผ ์ฌ์ฉํด๋ดค๋ค! ์ค์ฒฉ if๋ฌธ์ด ํ์ํ๋ค ์๊ฐํ ๋ถ๋ถ์ ์ผํญ์ฐ์ฐ์๋ก ํด๊ฒฐํ ์ ์๋ ๋ฐฉ๋ฒ Liked ๋น๋ก ๋ด๊ฐ ์ง์ ์๊ฐํด์ ๋ง๋ ์ฌ๊ทํจ์๋ ์๋์์ง๋ง ๊ทธ๋๋ ์กฐํฉ ์๊ณ ๋ฆฌ์ฆ์ ๋ํด ๋ฐฐ์ฐ๊ณ ์ฌ์ฉํ๋ค. ์ค์ด๋ ๋ฉ์๋ ๊ตฌ๊ธ๋ง Lacked const์ let ์์น ์ปจ๋ฒค์
์ค์ (const์ฐ์ ๊ทธ๋ฆฌ๊ณ let) ์ ๋ฆฌํ ๋ ์ผํญ์ฐ์ฐ์ ์๊ฐ ์๋๋ฉด ์ค์ฒฉif๋ฌธ ์ฐ๋ ๋ฒ๋ฆ ๋ถํ์ํ ์ฝ๋ ๋ฐ๋ณต
ํ์ด ๐๐ปโ๏ธ function solution(participant, completion) { participant.sort(); completion.sort(); for (let i = 0; i
ํ์ด1 ๐๐ปโ๏ธ //ํ์ด 1 function solution(nums) { const numberOfAllCases = getCombinations(nums, 3).map((innerArr) => innerArr.reduce((acc, cur) => acc + cur, 0) ); let result = 0; numberOfAllCases.map((v) => { if (primeNumber(v)) result++; }); return result; } const primeNumber = (x) => { for (let i = 2; i { const result = []; if (arrLength === 1) return arr.map((el) => [el]); arr.map((item, idx, this..
ํ์ด ๐๐ปโ๏ธ function solution(answer) { const result = []; const personOne = [1, 2, 3, 4, 5]; const personTwo = [2, 1, 2, 3, 2, 4, 2, 5]; const personThree = [3, 3, 1, 1, 2, 2, 4, 4, 5, 5]; const answerOne = answer.filter((v, i) => v === personOne[i % 5]).length; const answerTwo = answer.filter((v, i) => v === personTwo[i % 8]).length; const answerThree = answer.filter((v, i) => v === personThree[i..