전체 글

· React
useLocation 훅 ⭐️ useLocation 훅은 현재의 URL을 대표하는 location '객체' 를 반환한다. 객체안에는 pathname, search, hash, state, key 프로퍼티가 존재한다. pathname : 현재 주소의 경로 (쿼리스트링, 해시 제외) search : pathname 이후에 ? 부터의 문자열 (쿼리스트링) hash : pathname 이후에 # 부터의 문자열 (해시) state : location 객체로 화면이동을 시킬 때 코드 상으로 보내는 객체 key : history stack에서 location 객체를 찾기 위한 고유 키 사용법 import { useLocation } from 'react-router-dom' const Home = () => { co..
딥 다이브 기록을 중지하기로 결정. 들어가는 시간이 너무 많고 효율이 떨어진다. 읽기는 하되 중요한 포인트만 잡아서 javaScript카테고리에 기록.
Learned eval() 메서드를 알게됐고 사용하면 안되고 왜 사용하면 안되는지 숙지했다. 팩토리얼에 대해 배웠다. 사이드 이펙트에 대해 다시 한번 알았고 왜 지양해야하는지 숙지했다. 무조건 한줄로 풀어내는게 가독성에 좋지 않음을 다시 한번 느꼈다. Liked 조건식 사용법이 점점 다양해지고 있다. 새로운 공식을 알게된게 많은 한 주 였다. Lacked 반복되는 구문을 줄이는 방법을 조금 더 창의적으로 생각하지 못했다. 수학공식에 많이 약하다는 걸 느꼈다.. 하루 종일 고민했는데 풀지 못한 문제도 있었다. (구슬을 나누는 경우의 수)
function solution(emergency) { const result = []; const emergencyScoreArrray = [...emergency]; for (let i = 1; i b - a); return emergency.map(el => sortedEmergency.indexOf(el) + 1); } 순위대로 정렬되어 있는 배열을 하나 만들고 원본배열을 map메서드를 이용해 요소를 정렬되어 있는 요소의 인덱스 +1 하여 반환. 2줄로 깔끔하게 끝나다니 참고가 많이 되었다!!!
function solution(common) { return common[1] - common[0] === common[2] - common[1] ? common[0] + common.length * (common[1] - common[0]) : common[common.length - 1] * 2; } 풀 때는 느끼지 못했는데.. 가독성이.. 반성.. 피드백 function solution(common) { const diff1 = common[1] - common[0]; const diff2 = common[2] - common[1]; return diff1 === diff2 ? common[common.length - 1] + diff1 : common[common.length - 1] * 2; ..
function solution(n) { const result = []; primeFactorization(n, result); const set = new Set(result); return [...set]; } const primeFactorization = (num, arr) => { while (num % 2 === 0) { num = num / 2; arr.push(2); } for (let i = 3; i 2) arr.push(num); }; 소인수를 모두 구해서 set으로 중복을 제거하고 배열로 변환해서 제출. 피드백 function solution(n) { const primeSet = primeFactorization(n); return [...primeSet]; } const prim..
function solution(n, m) { const combinationArray = [BigInt(1), BigInt(1), BigInt(1)]; for (let i = BigInt(2); i
function solution(s) { const sum = s.split(" "); while (sum.includes("Z")) { const zIdx = sum.findIndex((el) => el === "Z"); sum.splice(zIdx - 1, 2); console.log(sum); } return sum.reduce((acc, cur) => acc + parseInt(cur), 0); } /* (풀이) 공백을 기준으로 요소를 나눠주고 배열안에 'Z'가 있을경우 원본배열(sum)에서 이전 요소 + 현재 요소를 제거해주는 while문을 돌려준 후 number타입으로 변경하여 남은 요소를 모두 더해준 뒤 반환해준다. for문으로 시도하는데 계속 원본배열을 건드리니 index가 엉켜서 고생했다..
YunCow
Jr Front-End 🦊