본문 바로가기

coding-heesong86

객체를 쿼리 스트링으로 인코딩하기 들어가기 객체를 Object.entries()와 map()을 사용해 쿼리 스트링으로 인코딩하기. let params = {lat: 45, lng: 6, alt: 1000}; let queryString = Object.entries(params).map(p => encodeURIComponent(p[0])) + '=' + encodeURIComponent(p[1])).join('&') //=> queryString is "lat=45&lng=6*alt=1000" params를 entries하면 키-값을 배열에 담는다. [['lat', 45], ['lng', 6], ['alt', 1000]] 그리고 map()을 통해 각 배열에 접근한다음 원하는 데이터로 가공함. 구조분해를 이용해서 이렇게 표현 할 수 있음.. 2021. 10. 17.
BrowserRoute, Switch, Route의 역할 (react-route-dom) 들어가기 `react-route-dom`의 주요 컴포넌트를 자세히 알아보자! 리액트 라우터에는 3개 주요 컴포넌트가 있습니다.: 라우터 컴포넌트 라우트 일치 컴포넌트 네비게이션 컴포넌트 그리고 리액트 라우터를 시작하려면, 이 순서를 지켜주어야 합니다.: 라우트 컴포넌트(루트) > 라우트 일치 > 네비게이션 라우트 컴포넌트 라우트의 핵심구성 요소로 이랑 가 있는데, 차이점은 URL 방식과 서버를 통신하느냐의 차이입니다. BrowserRouter: 일반 URL 경로를 사용하며 해당 경로마다 서버를 올바르게 구성해줘야합니다. HashRouter: URL의 해시 부분에 현재위치를 저장합니다. 서버로 전송되지 않아서 서버 구성이 필요하지 않습니다. 라우터를 이용하려면 최상위 레벨(=루트)에서 최상위 요소를 래핑해.. 2021. 10. 17.
섭씨 온도를 화씨 온도 단위로 나타내기 let celsius = [-15, -5, 0, 10, 16, 20, 24,32]; let fahrenheit = celsius.map(c => c * 1.8 + 32); //=> fahrenheit is [5, 23, 32, 50, 60.8, 68, 75.2, 89.6] 2021. 10. 14.
[해시 알고리즘] 옷 입는 경우의 수 구하기 '위장' N(= 착용하는 경우의 수) + 1(=착용하지 않는 경우) * 옷 타입 개수 - 1(=모두 착용하지 않는 경우) 예) 모자: 2, 안경:1일경우, 착용하지 않았을 경우의 수: (2+1) * (1+1) 모두 착용하지 않았을 경우를 제외하기 위해 마지막에 1을 빼줌. (무조건 하나 이상은 걸친다고 했으므로) 입력값: [["yellowhat", "headgear"], ["bluesunglasses", "eyewear"], ["green_turban", "headgear"]] 1. 해시 키-값 맵 역전 방식을 이용한 뒤 키 중복 여부를 체크해서 카운트를 계산해줌. const getTypeCount = clothes.reduce((cloth, [value, key])=>{ cloth[key] = cloth[key.. 2021. 10. 14.