본문 바로가기

자바스크립트3

객체를 쿼리 스트링으로 인코딩하기 들어가기 객체를 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.
섭씨 온도를 화씨 온도 단위로 나타내기 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.