본문 바로가기

반응형

전체 글

(64)
ChatGPT를 VSCode에서 활용하는 방법 (GPTkey 붙여넣기가 안될때) 요새 이슈 되고있는 알아서 척척 Chat GPT! VSCode에서 확장플러그인(익스텐션)으로 chatGPT를 사용할 수 있다. 코드 주석, 리팩토링, 리뷰, 기타 등등 유용하게 사용할 수 있다.(정확한지는 사용자 테스트가 필요함, 100% 신뢰/의존X) 사용안내 github readme >> https://github.com/kstost/aicodehelper VSCode에서 ChatGPT사용 방법 1. GPT API key 발급 (https://platform.openai.com/account/api-keys) 초록색버튼(오른쪽사진)을 눌러 발급받은 API Key를 복사 2. VS Code 플러그인(익스텐션) 에서 [aicodehelper]설치 3. VSCode 에서 preference > setti..
[javascript] 다차원 배열을 일차원으로 변경하는 방법 flat(), flatMap(), map() 함수형 프로그래밍을 하기 위해서 즉, 명령형 프로그래밍이 아닌 선언형 프로그래밍을 하기 위해서는 언어 내부에 포함된 고차함수(Higher-Order Function) (예: Array prototype인 map, filter, reduce) 를 잘 이용해야한다. 여기에 ECMAScript 2019(ES10) 부터 새롭게 flat()과 flatMap() 이 추가되었다. 둘 다 중첩된 배열 구조를 평탄화 하기 위해 사용하는 함수이며 IE에서는 호환이 되지않는다. 명령형프로그래밍이란? ↓ 더보기 명령형(imprerative) vs 선언형(declarative) 명령형 프로그래밍은 어떻게 할 것인가 (How)를 표현하고, 선언형 프로그래밍은 무엇을 할 것인가 (What)을 표현한다. //명령형 function..
[algorithm] 해시테이블 자료구조 란? 해시테이블이란? 키와 값을 받아 키를 해싱 하고, index에 값을 저장하는 선형 자료 구조. 시간복잡도 면에서 삽입(add)은 O(1) 상수시간이 소요되며, 키를 알고 있다면 삭제, 탐색도 O(1)이 소요된다. 해쉬테이블이 빠른 검색 속도를 제공하는 이유는 내부적으로 배열(버킷)을 사용하여 데이터를 저장합니다. 값이 저장되는 방법은 key,value 값을 해쉬 함수 연산을 통해 index값으로 계산하고 buckets에 해당인덱스에 저장한다. 해시는 언제 사용하면 좋을까 ? 예. 학생정보, 회원정보, 환자정보 등등 key value 쌍을 이루는 값들을 다뤄야할때 연결리스트를 사용한다면 학생정보를 탐색할때 O(n)시간복잡도가 걸린다. 배열을 사용한다면 인덱스를 모를 경우 탐색에 O(n)이 걸린다. 해시테이..
[javascript] 헷갈리고 짜증유발 증감연산자 증감연산자 코딩 처음 했을 때 알쏭달쏭 헷갈리게 만들었던 범인. 다시 그때의 기억을 되짚어보며.. 증감 연산자 란 ? 변수의 값을 1씩 증가시키거나 1씩 감소시키는 연산자. 연산자의 위치에 따라 (앞 or 뒤) 전위연산자, 후위연산자로 구분된다. 전위 연산자 VS 후위 연산자 (prefix operator vs postfix operator) 보통 후위연산자가 좀 더 익숙하니까 후위연산자 부터 ! [후위연산자] /** * [후위연산자는 증가/혹은 감소하기 전에 값을 돌려준다.] */ let x = 1; let y = x++ ; // 사진 1번처럼 증가 되기 전 값 1이 y에 들어간다. // 그다음 x는 1이 증가된다. console.log(x, y); // 2, 1 let i = 3; let j = i-..
[javascript] 배열의 push,pop,unshift,shift 사용법 1. 배열에 값을 추가 push(), unshift() .push(value) : 배열의 맨 끝에 새로운 값 추가. .unshift(value) : 배열의 맨 앞에 새로운 값 추가. 예시 const arr = [1,2,3,4,5,6]; arr.push(7); // [1,2,3,4,5,6,7]; arr.unshift(0); //[0,1,2,3,4,5,6,7]; 2. 배열에 값을 삭제 pop(), shift() .pop() : 배열의 맨 끝에 있는 값 삭제. .shift() : 배열의 맨 앞에 있는 값 삭제. 예시 const arr = [1,2,3,4,5,6]; arr.pop(); // 6 arr은 [1,2,3,4,5]; arr.shift(); // 1 arr은 [2,3,4,5]; 3. push, pop, ..
React은(는) UMD 전역을 참조하지만 현재 파일은 모듈입니다. 대신 가져오기를 추가해보세요. ts(2686) React은(는) UMD 전역을 참조하지만 현재 파일은 모듈입니다. 대신 가져오기를 추가해보세요. ts(2686) javascript -> typesript 로 변환 과정에서 해당 에러가 난다면... ​ 1.package.json파일 체크 typescript version 이 4.1 이상인지 체크 react, react-dom version 이 17 이상인지 체크 ​ 2. tsconfig.json파일 체크 compilerOptions 안에 "jsx": "react-jsx" 확인 및 추가 { "compilerOptions": { ... "jsx": "react-jsx" } } 해당프로젝트 내에 tsconfig.json이 없다면 (npx create-react-app시 template를 typescript로..
[Javascript] 작업 시간 측정 방법 console.time(), console.timeEnd() console로 작업 소요시간 측정 방법 2가지 ! 1. new Date() 함수 활용 const startTime = new Date().getTime(); // ...코드 작성 const finishTime = new Date().getTime(); console.log(finishTime- startTime); 2. 타이머 시작: console.Time() / 타이머 종료: console.timeEnd() - 하나의 페이지에서 최대 10,000개의 타이머를 동시에 실행할 수 있다. - time과 timeEnd는 ()안의 키 값을 줘서 짝을 이룰 수 있다. - 키값을 안주면 키값은 default:가 된다. // 예제 1: 키값 없으면 [default] console.time(); // ...코드 작성..
[알고리즘 코딩테스트 꿀팁] 코딩테스트 잘보는 법 TIP 예상 할 수 있듯이 특별한 꼼수가 있는 것은 아니다. 그리고 다 아는 얘기, 당연하지만 쉽게 간과할 수도 있는 내용이라고 생각한다. 코딩 테스트 사이트: 백준코딩: https://www.acmicpc.net/ 프로그래머스: https://programmers.co.kr/ 해커랭크 : https://www.hackerrank.com/ 린트코드 : https://www.lintcode.com/ 리트코드 : https://leetcode.com/ [문제를 풀 때 TIP] 여러가지 풀이방법이 있을 수 있다는 것을 생각하기. (생각이 고착화 되어 막힌다면 풀이시간이 길어질 수도, 풀지 못할 수도 있다.) 항상 예외가 있을 수 있다는 것을 생각하기. (예측케이스를 고려하지 못하면 틀릴 수 도 있다.) 더 효율적인 ..

반응형