본문 바로가기

분류 전체보기198

[React.js] 제로초 웹게임 - 1. 구구단 (react, babel) 강의를 통해 새로 알게 된 것들 CRA없이 html 파일 하나에다가 react, babel을 script로 세팅해서 React SPA 페이지를 만들어 보았습니다. 리액트를 처음 만났을 때 분명히 이런 방식을 접해봤었고, JSX가 아닌 이전 문법도 접해보았습니다. 하지만 그 당시엔 새로운 지식을 다량 접하다 보니 제대로 못 알아들었었습니다. 제로초 님 강의를 보면서 다시금 Babel이 JSX를 변환해준다는 것도 알게 되었고, index.html에다가 직접 React Component를 만드는 경험도 해보았습니다. 한번씩 "남이 만들어 둔 CRA 없이는 Page하나 못만드는 바보" 라는 생각을 하곤 했는데 마법의 뒷부분을 알게 되니 기분이 좋네요. 아주 간단한 구구단 만들기였지만, 기본을 다시 다지는 꽤 의.. 2022. 10. 21.
[React.js] to-do-app, fetch => Axios 마이그레이션 과정 Axios 마이그레이션 다른 사람이 만든 to-do-app을 보니?! react.js로 만든 to-do-app을 TypeScript로 성공적으로(?) 마이그레이션했다. 무수한 에러를 이겨내고 마침내 정상 동작하는 App을 보는 기쁨을 충분히 만끽하며 즐거워 하고 있었다. 그러나… 다른 사람들의 코드를 보다 보니 통신 부분이 너무나도 깔끔한것이었다. 비결이 무엇일지 살펴보니 깔끔함의 비결은 이것도 저것도 아닌 AXIOS 라이브러리를 사용하고 있기 때문이었다~!!!!! 나도 한번 써볼까 ⁉️ 사실 이전에 프로그래머스에서 과제 테스트를 할 때 “Axios가 아닌 기본 fetch 함수를 사용해주세요.” 라는 문구를 본적이 있었다. 그래서 “axios를 사용하지 말고 기본 fetch만으로 통신을 잘 해내자!” 라.. 2022. 10. 20.
[Javascript] (프로그래머스 level 0) 로그인 성공? [Javascript] (프로그래머스 level 0) 로그인 성공? 💡 구글에 Javascript 풀이가 많이 없거나, 배운 점이 있으면 포스팅합니다. 내 풀이 function solution(id_pw, db) { for (let i = 0; i < db.length; i++) { let userInfo = db[i]; if (userInfo[0] === id_pw[0]) { let loginResult = id_pw[1] === userInfo[1] ? &#39;login&#39; : &#39;wrong pw&#39;; return loginResult } } return &#39;fail&#39; } Array.forEach 또는 Array.filter()로 풀려고 했으나, 그럼 로그인 정보를 찾은.. 2022. 10. 20.
[Javascript] (프로그래머스 level 0) 등수 매기기 [Javascript] (프로그래머스 level 0) 등수 매기기 💡 구글에 Javascript 풀이가 많이 없거나, 배운 점이 있으면 포스팅합니다. 내 풀이 function solution(score) { const scoreOrder = score.map((x, i) => [x[0] + x[1], i]) scoreOrder.sort((a, b) => b[0] - a[0]) const result = []; for (let i = 0; i 0) { let prevTotalScore = scoreOr.. 2022. 10. 20.
[Javascript] (프로그래머스 level 0) 치킨 쿠폰 [Javascript] (프로그래머스 level 0) 치킨 쿠폰 💡 구글에 Javascript 풀이가 많이 없거나, 배운 점이 있으면 포스팅합니다. 내 풀이 function solution(chicken) { let coupon = 0; let service = 0; while (chicken-- > 0) { coupon++; if (coupon % 10 === 0) { chicken++; service ++; } } return service; } 시간계산 없이 무지성으로 풀었네요! 😅 치킨 갯수를 하나씩 뺴면서, 쿠폰을 더하고 쿠폰이 10개가 될 때마다 먹을 수 있는 치킨 갯수를 +1, 서비스 받은 갯수도 +1 뭔가 직관적이긴한데, 그만큼 알고리즘 없이 완탐으로 푼거라 시간 복잡도에서는 좋지 않은 결.. 2022. 10. 20.
[Javascript] (구름 먼데이 챌린지) 1주차 1번 문제 [Javascript] (구름 먼데이 챌린지) 1주차 1번 문제 💡 구글에 Javascript 풀이가 많이 없거나, 배운 점이 있으면 포스팅합니다. 내 풀이 function solve() { const nums = lines[1].trim().split(&#39; &#39;); const answer = nums.reduce((acc, cur) => BigInt(+cur) * BigInt(acc), 1n).toString(); return answer; } 배운 점, 느낀 점 테스트 케이스 10번이 계속 안풀려서 한참을 고생했습니다. 결국 BigInt를 사용해서 풀었는데요, 해당 개념을 4개월전에 사용은 해봤지만 제대로 알지 못해서 한참을 고생했네요. 프로그래머스 문제를 풀때는 그냥 단순히 구현만 해도 .. 2022. 10. 14.
[Javascript] (프로그래머스 level 0) 외계행성의 나이 [Javascript] (프로그래머스 level 0) 외계행성의 나이 💡 구글에 Javascript 풀이가 많이 없거나, 배운 점이 있으면 포스팅합니다. 내 풀이 function solution(age) { const programmersAge = [&#39;a&#39;, &#39;b&#39;, &#39;c&#39;, &#39;d&#39;, &#39;e&#39;, &#39;f&#39;, &#39;g&#39;, &#39;h&#39;, &#39;i&#39;, &#39;j&#39;]; return age.toString().split(&#39;&#39;).map((num) => programmersAge[num]).join(&#39;&#39;); } 다른 사람 풀이 참고한 풀이 function solution.. 2022. 10. 14.
[Javascript] (프로그래머스 level 0) 중복된 문자 제거 [Javascript] (프로그래머스 level 0) 중복된 문자 제거 💡 구글에 Javascript 풀이가 많이 없거나, 배운 점이 있으면 포스팅합니다. 내 풀이 function solution(my_string) { const count = {}; return my_string.split(&#39;&#39;).filter((x) => { if (!count[x]) { count[x] = true; return x } }).join(&#39;&#39;) } js는 객체지! 하면서 객체 이용해서 풀었는데,,, 다른 사람 풀이 참고한 풀이 function solution(my_string) { return [...new Set(my_string)].join(&#39;&#39;) } set 구조로 중복 제거.. 2022. 10. 12.
[Javascript] (프로그래머스 level 0) 문자 반복 출력하기 💡 구글에 Javascript 풀이가 많이 없거나, 배운 점이 있으면 포스팅합니다. 내 풀이 function solution(my_string, n) { const answer = []; for (let i = 0; i 0) { answer.push(my_string[i]); } } return answer.join(&#39;&#39;); } 다른 사람 풀이 참고한 풀이 function solution(my_string, n) { return my_string.split(&#39;&#39;).map((x) => x.repeat(n)).join(&#39;&#39;); } String에는 repeat()이라는 메서드가 .. 2022. 10. 9.
[Javascript] (프로그래머스 level 0) 양꼬치 [Javascript] (프로그래머스 level 0) 양꼬치 💡 구글에 Javascript 풀이가 많이 없거나, 배운 점이 있으면 포스팅합니다. 내 풀이 function solution(n, k) { let lamb = 12000 * n; let services = Math.floor(n / 10); let drinks = k - services >= 0 ? (k - services) * 2000 : 0; let total = lamb + drinks; return total; } 헷갈려서 변수로 했는데 다른 사람 풀이는 다 그냥 연산 때려 넣었네요.. ㅎㅎ 다른 사람 풀이 참고한 풀이 function solution(n, k) { let lamb = 12000 * n; let services = ~~(.. 2022. 10. 9.