https://programmers.co.kr/learn/courses/30/lessons/70128 코딩테스트 연습 - 내적 길이가 같은 두 1차원 정수 배열 a, b가 매개변수로 주어집니다. a와 b의 내적을 return 하도록 solution 함수를 완성해주세요. 이때, a와 b의 내적은 a[0]*b[0] + a[1]*b[1] + ... + a[n-1]*b[n-1] 입니다. (n은 a, b의 programmers.co.kr 왜 reduce로 바로하는 방법을 생각하지 못했을까 ? 둘 다 배열로 주어지니 reduce사용해야겠다 바로 떠올려보자 나의 코드 function solution(a, b) { let box = []; for(i=0, k=0; i
전체 글
https://programmers.co.kr/learn/courses/30/lessons/76501 코딩테스트 연습 - 음양 더하기 어떤 정수들이 있습니다. 이 정수들의 절댓값을 차례대로 담은 정수 배열 absolutes와 이 정수들의 부호를 차례대로 담은 불리언 배열 signs가 매개변수로 주어집니다. 실제 정수들의 합을 구하여 re programmers.co.kr 한 2분이면 풀겠다 했는데 20분이 걸렸다. 아직 reduce에 대해서 완변하게 이해 못한 것 같다. 그리고 reduce 에서 index를 적극 활용하자 나의 코드 function solution(absolutes, signs) { const result = absolutes.reduce((pre, cur, i) => { if(signs[..
the "Cannot read property '0' of undefined" error occurs when trying to access the index '0' on a variable that stores an 'undefined' value. 이것을 해결하기 위해서는 array 이나 string 같은 인덱스 엑세스를 지원하는 값에만 엑세스해야한다. 예제 const arr = undefined; // ⛔️ Cannot read properties of undefined (reading '0') console.log(arr[0]); const str = undefined; // ⛔️ Cannot read properties of undefined (reading '0') console.log(str..
Array.prototype.reduce() 주의 : reduce는 원본배열을 변환시키지 않는다. reduce 메서드는 자신을 호출한 배열을 모든 요소를 순회하며 인수로 전달받은 콜백 함수를 반복 호출한다. 그리고 콜백 함수의 반환값을 다음 순회 시에 콜백 함수의 첫 번째 인수로 전달하면서 콜백 함수를 호출하여 하나의 결과값을 만들어 반환한다. 이때 원본 배열은 변경되지 않는다 reduce 메서드는 자신을 호출한 배열의 모든 요소를 순회하며 하나의 결과값을 구해야 하는 경우에 사용한다. const sum = [1, 2, 3, 4].reduce((accumulator, currentValue, index, array) => accumulator + currentValue, 0) console.log(s..
https://programmers.co.kr/learn/courses/30/lessons/64061 코딩테스트 연습 - 크레인 인형뽑기 게임 [[0,0,0,0,0],[0,0,1,0,3],[0,2,5,0,1],[4,2,4,4,2],[3,5,1,3,1]] [1,5,3,5,1,2,1,4] 4 programmers.co.kr 나의 코드 function solution(board, moves) { var answer = 0; var box = []; let boards = board for( i=0; i < moves.length; i++){ let moving = moves[i] for(k=0; k { return unique[unique.length - 1] === item ? unique.slice(0,-..
https://programmers.co.kr/learn/courses/30/lessons/67256 코딩테스트 연습 - 키패드 누르기 [1, 3, 4, 5, 8, 2, 1, 4, 5, 9, 5] "right" "LRLLLRLLRRL" [7, 0, 8, 2, 8, 3, 1, 5, 7, 6, 2] "left" "LRLLRRLLLRR" [1, 2, 3, 4, 5, 6, 7, 8, 9, 0] "right" "LLRLLRLLRL" programmers.co.kr 풀이 처음에는 if문으로 1,4,7 / 3,6,9를 나누고 2,5,8,0은 따로 해줬는데 이렇게 하면 너무 if문이 많아져서 질문하기에서 약간의 힌트를 얻었다. 힌트를 보기전에는 1~12번 캐이스는 전부 성공하는데 13~20번은 전부 실패하였다. 그 이..
React Query Fetch, cache and update data in your React and React Native applications all without touching any "global state". 이것이 리액트 쿼리 홈페이지 첫번째에 나와있는 말이다. https://velog.io/@___pepper/React-Global-State-%EA%B4%80%EB%A6%AC [React] Global State 관리 context를 이용한 global state 관리 velog.io 리액트 쿼리는 리액트에서 비동기 로직을 부드럽게 다룰 수 있게 해주는 라이브러리다. state관리에 아주 효율적이다. 기존에 isLoading, isError, refetch, 데이터 캐싱 등 직접 구현..
https://velog.io/@lesh/%ED%85%9C%ED%94%8C%EB%A6%BF-%EB%A6%AC%ED%84%B0%EB%9F%B4Template-Literal%EA%B3%BC-%EC%8A%A4%ED%83%80%EC%9D%BC%EB%93%9C-%EC%BB%B4%ED%8F%AC%EB%84%8C%ED%8A%B8styled-component 템플릿 리터럴(Template Literal)과 스타일드 컴포넌트(styled-component) styled-component scss도, less도 스타일 파일이 분리되어 있는게 난잡하고 불편하다고 느껴질 시점에 styled-component를 접하게 되었다. styled-component는 클래스에 비해서 작명하기도 간단했고, 한 파일안에 velog.io $..
배열 배열에서 ...을 사용하면 배열이 개별원소가 된다. const array = [1, 2, 3] console.log(...array) // 1 2 3 console.log([...array]) // [ 1, 2, 3 ] console.log(array) // [1, 2, 3] const array1 = [1, 2] const array2 = [5, 6] const array3 = [...array1, 3, 4, ...array2] console.log(array3) // [ 1, 2, 3, 4, 5, 6] 이런식으로 출력이 된다. 그리고 ...을 사용해도 원본은 그대로 유지가 된다. 객체 객체에서 사용할때는 나머지를 의미한다. const obj = { a : 1, b : 2, c : 3, d : 4..