🔥문제링크https://school.programmers.co.kr/learn/courses/30/lessons/42839 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 🔥풀이핵심은 재귀적으로 모든 순열을 구하는 프로세스 와 소수를 빠르게 찾는 프로세스이다.처음에 재귀적으로 접근하면 시간에서 걸릴 것 같았는데 걸리지 않았고 오랜만에 재귀적 방법을 이용했어서 처음에는 풀이가 바로 생각나지 않았다.function solution(numbers) { let primeNumbers =[] // dfs (깊이 우선 탐색 정의 ) const dfs..
자바스크립트
🔥문제링크 https://school.programmers.co.kr/learn/courses/30/lessons/42746 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 🔥1 TRY ( 실패 )아래 코드는 첫번째로 작성한 코드 였다. convert 함수를 이용해서 기존 numbers의 원소를 변형한 뒤 그 값을 기준으로 sorting 하는 방법으로 풀이를 진행했다.하지만 convert 함수 내부에 return 하는 수식이 잘 못 되었다. 예를들어 [ 3, 344 ] 가 있을 경우 이는 convert를 통해 [ 3999, 3449 ] 로 취급되어 이 수의..
🔵문제링크https://school.programmers.co.kr/learn/courses/30/lessons/131704 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 🔵내풀이function solution(order) { let arr = new Array(order.length).fill(0) for(let i=0; i=1 && sub.at(-1)===commingNum){ sub.pop() ++commingNum }else{ br..
문제링크https://school.programmers.co.kr/learn/courses/30/lessons/118666 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제링크function solution(survey, choices) { var answer = ''; const map = {} const types = ['RT','CF','JM','AN'] types.forEach((type)=>{ type.split("").forEach((v)=>{ map[v]=0 }) }..
예전 포스트에서 로 upload 받은 img File을 base64 형식의 data로 변환해보았는데 반대로 이번 포스트에선 base64 형식의 img data 를 다시 Blob 형태의 File로 다시 변환 해보았다. 준비된 base64 img data 아래 귀여운 고양이 이미지와 이 고양이 이미지를 base64로 인코딩한 데이터를 가져왔다.사진 및에 img tag src 속성값 "data:image/jpg; base64,/9j/4aaqsK ~~~ " 코드 구현 // 고양이 img const base64data = "data:image/jpg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBxMSEBIQEBIVEBAVDxUQDxAPEBAPDw8PFRUXFh..
한동안 프로젝트를 하느라 정신이 없어 포스팅을 오랜만에 쓰는 것 같다🤔input tag를 통해서 이미지를 업로드 할 시 화면에 해당 이미지가 화면에 표기되도록 직접 작업해보면서 궁금했던 사항을 공부하였다. 공부하다 binary 데이터를 어떻게 JavaScript로 다뤄야 할지에 대해 많이 알게 된 것 같았다. 관련하여 알게된 사실들은 정리하여 추후 포스팅 해야겠다 구현 코드// index.html 코드 설명일단 tag 클릭하여 img를 업로드 하면 change event handler가 실행된다.실제 img File의 img를 읽기위해서는 js에서 제공하는 FileReader 라는 객체를 이용해야 하므로 FileReader 객체를 생성하고 readAsDataURL 이라..
코드를 짜다보면 흔하게 예외처리를 할 때가 항상 오기 마련이다. 예외 처리 하는방법은 많겠지만 try catch 문과 throw Error를 사용하는 것이 일반적이다. 하단 예시를 보자 일반적인 예외 처리 방법 const test =()=>{ try{ console.log('1'); throw new Error('error') console.log('2'); } catch(e){ console.log("error:",e); } } 코드에 보면 throw와 Error 객체이 위치해 있는 것을 알 수 있습니다. 사용법은 알지만 throw와 Error객체를 면밀히 살펴본 적은 없는데요. 이번기회에 조금 살펴보았으니 궁금하시면 하단을 참고하시면 됩니다. throw 설명 1. Mdn을 보면 throw는 사용자 정..
배경 react@18.2.0 의 memo에 관한 문서를 보다가 useMemo는 props가 이전 props와 shallow equal 하지 않을 때 리렌더링 된다고 하고 그 shallow equal를 판단할 때의 결과가 Object.is(prev값,next값) 의 결과와 같다고 나와 있다. 그래서 Object.is() 라는 메서드에 관심을 같게 되어 MDN을 살펴보았다. Object.is()의 개념 Object.is() 정적 메서드는 두 값이 같은지 결정한다. (참고 : https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Object/is ) 여기서 나는 자바스크립트에서 같은값인지 판별하는 방식 2가지 == 와, ==..
문제 🔽 https://school.programmers.co.kr/learn/courses/30/lessons/84512 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 다른사람 풀이 🔽 function solution(strings, n) { var answer = []; strings.sort((a,b)=>{ if(a[n]>b[n]){ return 1 } else if(b[n]>a[n]){ return -1 } else if(a[n]==b[n]){ if(a>b){ return 1 } else if(a{ set.add(val[n]) }) // Set -..
문제 🔽 https://school.programmers.co.kr/learn/courses/30/lessons/131705 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 다른사람 풀이 🔽 function solution(number) { let result = 0; const combination = (current, start) => { if (current.length === 3) { result += current.reduce((acc, cur) => acc + cur, 0) === 0 ? 1 : 0; return; } for (let i = st..