inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

코드 리뷰 부탁드립니다 :)

미해결

자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)

안녕하세요 선생님 😀 강의 잘 보고 있습니다. 저는 count 변수를 두고 값을 저장하고 i값을 변경하여 사용하였는데 이렇게 작성해도 되는지 궁금하여 질문을 올리게 되었습니다. 또 아래와 같이 for문 안에 있는 i 값을 변경해도 괜찮은지도 궁금합니다! function solution(k: number, arr: number[]): number { let sum: number = 0; let count: number = 0; let max: number = 0; for (let i = 0; i < arr.length; i++) { if (count < k) { sum += arr[i]; count++; } else { if (max < sum) { max = sum; } i = i - count; count = 0; sum = 0; } } return max; } 감사합니다

  • javascript
  • 코딩-테스트
  • typescript
댓글 1 좋아요 0 조회수 497

최소힙의 결과값과 최대힙->최소힙 결과값이 다른게 맞나요?

미해결

비전공자의 전공자 따라잡기 - 자료구조(with JavaScript)

최소 힙 insert #reheapUp(index) { // index 0은 root if (index > 0) { // 부모 노드가 root가 아니면 계속 비교 const parentIndex = Math.floor((index - 1) / 2); if (this.arr[index] < this.arr[parentIndex]) { // 값 바꾸기 const temp = this.arr[index]; this.arr[index] = this.arr[parentIndex]; this.arr[parentIndex] = temp; this.#reheapUp(parentIndex); } } } // O (log n) insert(value) { this.arr.push(value); this.#reheapUp(this.arr.length - 1); } const heap = new MinHeap(); // insert는 큰 값부터 넣고, root가 8이 되는지 확인 heap.insert(78); heap.insert(56); heap.insert(45); heap.insert(32); heap.insert(23); heap.insert(19); heap.insert(8); // [8, 32, 19, 78, 45, 56, 23] heap; 최대 힙 insert #reheapUp(index) { // index 0은 root if (index > 0) { // 부모 노드가 root가 아니면 계속 비교 const parentIndex = Math.floor((index - 1) / 2); if (this.arr[index] > this.arr[parentIndex]) { // 값 바꾸기 const temp = this.arr[index]; this.arr[index] = this.arr[parentIndex]; this.arr[parentIndex] = temp; this.#reheapUp(parentIndex); } } } // O (log n) insert(value) { this.arr.push(value); this.#reheapUp(this.arr.length - 1); } const heap = new MaxHeap(); // insert는 작은 값부터 넣고, root가 78이 되는지 확인 heap.insert(8); heap.insert(19); heap.insert(23); heap.insert(32); heap.insert(45); heap.insert(56); heap.insert(78); // [78, 32, 56, 8, 23, 19, 45] heap; 최대 힙 -> 최소 힙 // 최소 힙 유지 함수 #heapifyMin(index) { // 수정, 삭제 const leftIndex = index * 2 + 1; const rightIndex = index * 2 + 2; const smallerIndex = (this.arr[leftIndex] || 0) < (this.arr[rightIndex] || 0) ? leftIndex : rightIndex; if (this.arr[index] > this.arr[smallerIndex]) { // 값 바꾸기 const temp = this.arr[index]; this.arr[index] = this.arr[smallerIndex]; this.arr[smallerIndex] = temp; // 재귀적으로 최소 힙 유지 this.#heapifyMin(smallerIndex); } } toMinHeap() { // O(1/2n) for (let i = Math.floor(this.arr.length / 2 - 1); i >= 0; i--) { this.#heapifyMin(i); } } const heap = new MaxHeap(); // insert는 작은 값부터 넣고, root가 78이 되는지 확인 heap.insert(8); heap.insert(19); heap.insert(23); heap.insert(32); heap.insert(45); heap.insert(56); heap.insert(78); // [78, 32, 56, 8, 23, 19, 45] heap.toMinHeap(); // [8, 23, 19, 32, 78, 56, 45] heap; // 최소 힙 insert 결과 값 [8, 32, 19, 78, 45, 56, 23] // 최대 힙 insert 결과 값 [78, 32, 56, 8, 23, 19, 45] // 최대 힙 -> 최소 힙 결과 값 [8, 23, 19, 32, 78, 56, 45] 최소힙 insert 결과 값과 최대 힙 -> 최소 힙 결과 값은 서로 다른데 최소 힙의 조건은 아래가 크고, 위가 작다. 라고 하셨으니 결과 값은 달라도 최소 힙의 조건이 맞으니 최대 힙 -> 최소 힙 변환 코드가 맞는걸까요?

  • javascript
  • 코딩-테스트
  • 알고리즘
Choi Boo 댓글 1 좋아요 0 조회수 277

toggleComplete(todoItem, index)에러

해결됨

Vue.js 중급 강좌 - 웹앱 제작으로 배워보는 Vue.js, ES6, Vuex

이 부분에서 index에 에러 메세지가 나옵니다. 'index' is defined but never used 내용의 메세지가 나오는데, removeTodo(todoItem, index)에는 안나오는데 toggleComplete에만 나와요. <i class="checkBtn fa-solid fa-square-check" v-bind:class="{checkBtnCompleted: todoItem.completed}" v-on:click="toggleComplete(todoItem, index)"></i> toggleComplete: function(todoItem, index){ todoItem.completed = !todoItem.completed; } 찾아보다가 devServer: { overlay: false } 이걸 추가하라는 글을 보고 추가했는데, 변화가 없길래 서버를 다시 실행 해봤습니다. 그런데 오히려 저거 때문에 다른 오류가 발생하여 서버실행이 안됩니다. 지우니까 다시 실행은 되는데.. 어떻게 해결해야 하나요? +) 처음 구현때 안되어서 주석처리하고 그대로 진행하다, 리팩토링때 다시 해봤는데, 리팩토링 코드로는 할일완료 기능이 정상 작동합니다. 무슨 차이가 있을까요?

  • javascript
  • vue.js
  • es6
  • vuex
RooRoo 댓글 2 좋아요 2 조회수 326

spoqa han sans neo

미해결

SCSS(SASS)+FLEX 실전 반응형 웹 프로젝트 with Figma

spoqa han sans neo글씨체 다운받았는데 피그마 할 때 text밑에 fonts에서 no matching font로 나오네요. 아예 검색자체가 안되는데 무슨 문제인가요??

  • HTML/CSS
  • javascript
  • sass
  • jquery
  • scss
imhj11777 댓글 3 좋아요 1 조회수 1087

js 겜블링 게임 클릭횟수, 재시작 질문

미해결

html css js 사용하여서 겜블링 게임 만드는 중입니다. click 버튼 눌렀을 때 밑에 횟수가 뜨는게 아니라 버튼 안에서 click1, click2 .. 이런 식으로 증가시키고 싶은데 숫자가 자꾸 밑으로 내려갑니다 ㅠㅠ 그리고 오류가 있는지 restart 버튼은 눌리지 않습니다..

  • js
  • javascript
  • 자바스크립트
댓글 1 좋아요 0 조회수 505

이해되지 않는 부분이 있어서 질문드립니다.

미해결

자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. rt-lt+1의 값이 왜 카운트 해야 하는 값이랑 일치하는 걸까요? 최종적으로 카운트 해야 하는 값이 같다는건 알겠는데 왜 같은지 이해가 안됩니다ㅠㅠ

  • javascript
  • 코딩-테스트
댓글 2 좋아요 0 조회수 403

코드샌드박스 화면구성이 달라졌네요.

해결됨

진짜! 자바스크립트(Javascript) - 기초부터 고급까지

오늘부터 공부시작하려고 환경설정을 열었다가 바로 막혔습니다. 바닐라 자바스크립트 템플릿이 안보여요 ㅠㅠ 해결부탁드립니다.

  • javascript
  • es6
  • 객체지향
  • es5
foxball 댓글 4 좋아요 0 조회수 749

fontawesome의 icon이 제대로 작동하지 않습니다.

미해결

Vue.js 중급 강좌 - 웹앱 제작으로 배워보는 Vue.js, ES6, Vuex

위의 화면캡처와 같이 알려주신대로 코딩하였으나 아래 화면캡처와 같이 브라우저에서 정상적으로 표시되지 않습니다.

  • javascript
  • vue.js
  • es6
  • vuex
주맨발 댓글 3 좋아요 1 조회수 639

챕터3의 5.문자열 압축

미해결

자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)

5.문자열 압축에서 s=s+' ' ; 을 사용해서 문자열을 하나더 늘려준다는것은 이해했습니다. 다만 혼자 문제를 풀당시 해당 작업을 하지않아도 값이 올바르게 나오며 오류가 나지 않았는데 왜 오류가 나지않을까요?

  • javascript
  • 코딩-테스트
leesoyun4206 댓글 2 좋아요 0 조회수 330

yarn start:dev 이후 에러

해결됨

[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core

docker-compose.yaml 파일 작성하고 postgres-data폴더도 생성하고 app.module.ts도 똑같이 작성되어 있는 상태입니다 도커가 실행되어있고, docker-compose up을 실행한 뒤에 다른 터미널에서 yarn start:dev를 하면 ERROR [TypeOrmModule] Unable to connect to the database. Retrying (1)... error: "typeormstudy" �����ͺ��̽� ���� at Parser.parseErrorMessage 이런 에러 메세지가 출력되면서 정상적으로 실행되지 않습니다 이전 강의에서 사용하던 프로젝트도 모두 종료가 되어있는 상태입니다 제가 어딘가를 놓쳐서 나오는 에러일까요..?

  • javascript
  • typescript
  • rest-api
  • nestjs
  • backend
우프베어 댓글 2 좋아요 1 조회수 947

AccessToken은 잘 만들어지는데 payload에 아무것도 안담겨요

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

로그인 시 받은 accesstoken을 밑에 /user/test의 헤더에 넣었습니다.처음에는 payload에 값이 담겼는데 갑자기 아무것도 안담기네요ㅜㅜ변경사항이 있었던 건 다 돌려봤는데도 도저히 뭐가 문제인지 모르겠어서 남깁니다.뭐가 문제인지도 모르겠어서 코드도 뭘 보여드려야 할 지 모르겠네요ㅜㅜ accesstoekn은 잘 만들어지는데.. 저 accesstoekn으로 UseGuards(AuthGuard('access')) 이 가드를 통과하는 거 아닌가요?validate()까지 간 거 보면 인가는 됐다고 생각했는데 왜 payload에 아무것도 안담기는지 모르겠네요ㅜㅜ

  • javascript
  • node.js
  • docker
  • rest-api
  • nestjs
댓글 1 좋아요 0 조회수 222

diaryList.map in not function 오류

해결됨

한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지

안녕하세요. 데이터 추가 기능 구현 중 오류가 생겼는데, 여러번 들어봐도 어디서 놓쳤는지 알수 없어서 문의드립니다. 저장 성공 얼럿이 뜬 후 diaryList.map is not a function 오류가 발생하는데 이유가 뭘까요ㅠㅠ? 올려주신 코드와 비교해봐도 잘못 작성된 부분을 찾지 못해서.. 확인 부탁드립니다! https://codesandbox.io/p/sandbox/dawn-silence-dtzj4w?file=%2Fsrc%2FApp.js%3A5%2C1 감사합니다.

  • javascript
  • react
  • node.js
댓글 1 좋아요 1 조회수 377

SplitText를 순수 자바스크립트로 써봤어요

해결됨

웹 애니메이션을 위한 GSAP 가이드 Part.02

// const { chars } = new SplitText('.stage h1', { type: 'chars' }); function splitTextChars(elem) { const textElem = document.querySelector(elem); const letters = textElem.textContent.split(''); let newHTML = ''; letters.forEach(letter => { newHTML += /* HTML */ ` <div style="position:relative; display:inline-block">${letter}</div>`; }); textElem.innerHTML = newHTML; return [...document.querySelectorAll(`${elem} div`)]; } const chars = splitTextChars('.stage h1'); 복습중에 유료플러그인이나 라이브러리 없이 써보고싶어서 만들어봤습니다 ! 맞는 코드인지는 모르겠지만 혹시 참고하실분이 계실까 싶어 남겨둘게요 !ㅎㅎ

  • HTML/CSS
  • javascript
  • 인터랙티브-웹
  • gsap
jay k 댓글 1 좋아요 3 조회수 685

자바스크립트 변수 스코프에 대해 질문드립니다.

해결됨

[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지

강사님 안녕하세요 변수 스코프에 대해 질문드립니다. 자바스크립트는 변수를 참조할 때 현재 블록 부터 시작해 상위 블록으로 올라가며 변수를 찾는다고 이해하고 있습니다. 그래서 아래의 1번째 코드는 이해가 됩니다. const b=10; 함수(a=>({ a: b //b는 10입니다. })); 여기서 2번째 b는 상위 블록으로 올라가며 const b =10 을 찾습니다. 그래서 a: 10이 됩니다. 그러나 2번째 코드의 경우 이해가 어려웠습니다. const b=10; 함수(b=>({ //b는 undefined 입니다. a: 11 })); 이때는 콜백함수의 매개변수 b에 10이 아닌 undefined가 들어갑니다. 여기서 이해가 어려웠습니다. 자바스크립트는 변수를 참조할 때 현재 블록 부터 시작해 상위 블록으로 올라가며 변수를 찾습니다. 그렇다면 1번째 코드처럼 2번째 코드에서도 파라미터 b에 10이 들어간다고 생각했는데, 제가 잘못 생각한 부분을 가르쳐주시면 감사하겠습니다.

  • node.js
  • javascript
Like me black 댓글 1 좋아요 1 조회수 296

API 실행시 에러

미해결

해당 에러 구글링해도 제가 아직 배움이 짧은지 이해를 못하겠습니다.

  • node
  • javascript
ㅎㅇㄴ 댓글 1 좋아요 0 조회수 256

테이블 관계

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

안녕하세요 예를 들어 MockUserRepository를 만들고 그 안에 mydb라는 데이터가 있습니다. 만약 기존 User 테이블이 Post 테이블과 관계가 맺어져 있다면 Post까지 mydb에 담아야 하나요? mydb = [{ id= '', name:='', password= '' }] 이렇게 해야 하는 건지 아니면 mydb = [{ id: '', name:'', password: '', post: { id: '', title: ''}] 이렇게 작성해야 하는 건지 궁금합니다!! 그리고 userService에서 postService를 사용하는 로직이 있는데 userService 테스트시 MockPost 테이블까지 같이 구현해야 하는 건지..아니면 다른 방법이 있는 건지ㅜㅜ 궁금하네요 하나만 더 여쭤보자면.. ㅜㅜ 제가 이해가 잘 안가서 그러는데 controller.ts를 테스트할 때는 service를 mock하고, service.ts를 테스트할 때는 데이터베이스를 mock해서 사용하는 건가요??

  • javascript
  • node.js
  • docker
  • rest-api
  • nestjs
댓글 1 좋아요 1 조회수 406

커리큘럼 관련 질문

해결됨

진짜! 자바스크립트(Javascript) - 기초부터 고급까지

강의 커리큘럼에서 추가 섹션 부분은 어떻게 이해하면 될까요? 갑자기 다른 개념에 대해 강의를 듣는 기분이라 어렵게 느껴지기도 해서요

  • javascript
  • es6
  • 객체지향
  • es5
swkim7161 댓글 1 좋아요 0 조회수 367

useState 오류

해결됨

React + GPT API로 AI회고록 서비스 개발 (원데이 클래스)

GPT API 호출, 프롬프트 연동 강의 0:24 계속해서 useState에 다음과 같은 오류가 뜹니다. import { useState } from "react"; 오류 사유는'useState' is declared but its value is never read. 대체 왜 해결이 안되는 것일까요..?ㅜ.ㅜ

  • HTML/CSS
  • javascript
  • react
  • node.js
  • chatgpt
한나 댓글 2 좋아요 1 조회수 836

props 이름 명명 시 주의사항?

미해결

Vue.js 시작하기 - Age of Vue.js

props의 이름을 정할 때 카멜식으로 했더니 인식이 안되네요.. 대소문자 섞이면 안되나요?

  • javascript
  • vue.js
이상민 댓글 3 좋아요 1 조회수 362

.left는 quickTo를 쓰지 않는 이유

해결됨

웹 애니메이션을 위한 GSAP 가이드 Part.02

.left도 지속적으로 x를 호출하니 quickTo를 쓰면 더 좋지않을까 라고 생각했는데 .left는 to로 컨트롤하시는 이유가 있을까요? quickTo의 기본값이 픽셀이라 퍼센트 넣으면 동작이 이상해지던데 혹시 이런 이유일까요?!

  • HTML/CSS
  • javascript
  • 인터랙티브-웹
  • gsap
jay k 댓글 1 좋아요 2 조회수 372

인기 태그

인프런 TOP Writers

주간 인기글