본문 바로가기

분류 전체보기180

Array.from() 정의 Array.from() 메서드는 유사 배열 객체나 반복 가능한 객체를 얕게 복사해 새로운 Array 객체를 만듭니다. console.log(Array.from('sangyun')); // output : ["s","a","n","g","y","u","n"] console.log(Array.from([3,4,5],x=>x*x)); // output : [9,16,25] 구문 Array.from(arrayLike[,mapFn[,thisArg]]) 매개변수 arrayLike 배열로 변환하고자 하는 유사 배열 객체나 반복 가능한 객체 mapFn (Optional) 배열의 모든 요소에 대해 호출할 맵핑 함수 thisArg (Optional) mapFn 실행 시에 this로 사용할 값 설명 Array.from.. 2021. 7. 16.
Array Method : Splice vs Slice Splice() 기존 요소를 제거하거나 교체하고 새 요소를 추가하여 배열의 내용을 변경해준다. 매개변수 splice(start, deleteCount, item1, item2, itemN) 반환값 삭제된 요소를 포함하는 배열 한 요소만 제거되면 한 요소의 배열이 반환 요소가 제거되지 않으면 빈 배열이 반환 start : 배열 변경을 시작할 인덱스 deleteCount : 제거할 배열의 요소 수를 나타내는 정수 item1,item2,... : 배열에 추가할 요소 let number = [1,2,3,4,5,6]; let remove = number.splice(1,0,3); //number = [3,1,2,3,4,5,6] //remove = [] 추가적 예시 : https://developer.mozilla.. 2021. 7. 15.
Parameter vs Argument Parameter란? 매개변수, 변수와 같은 말이다 function sum(a,b){ return a+b; } 함수 내부에 있는 인자로써, 함수를 호출할때 전달해준 argument의 값이 변수에 담기게된다. 들어오는 인자가 매개체 역할을 하기 때문에 매개변수라고도 한다. -함수를 실행하기 위해 필요하다고 지정하는 값 argument란? 전달인자, 값 sum(1,2); 함수를 호출할 때 값을 전달하기 때문에 전달인자라고 한다. 전달인자는 함수를 호출할 때마다 변하는 값을 가지기 때문에 변수가 아닌 값으로 정의한다. 또다른 말로는 인수라고 한다. -함수를 실행할 때 매개변수로 넘겨주는 값 sum(1,2)에 1,2는 argument(인수)이고, function sum(a,b){ return a+b; } 에서 .. 2021. 7. 15.
최대 매출(Sliding Window) 현수의 아빠는 제과점을 운영합니다. 현수 아빠는 현수에게 N일 동안의 매출기록을 주고 연속된 K일 동안의 최대 매출액이 얼마인지 구하라고 했습니다. 만약 N=10이고 10일 간의 매출 기록이 아래와 같습니다. 이때 K=3이면 12 15 11 20 25 10 20 19 13 15 연속된 3일간의 최대 매출액은 11+20+25 = 56만원 입니다. 여러분이 현수를 도와주세요. 입력설명 첫 줄에 N(5 [15,11,20]으로 넘어갈때마다 세 원소들의 합계를 구해주려면 반복문이 한개 더 필요하다. 굳이 그렇게 할 필요 없이 12+15+11+20-12를 해주면 15+11+20의 값이 나오게 된다. 이러한 방식으로 반복문으로 전달받은 arr의 모든 구간을 계산해준뒤 answer 배열에 push를 해준다. 최종적으로.. 2021. 7. 15.
2021/07/14 - CodeReview Project : 달력과 연동되는 가계부 만들기 / BCSD team project (1) CustomHook을 바로 JSX내부에서 사용하지말고, 함수 컴포넌트에 선언을 하고, 사용을 하자 +{useGiveSum('INCOME',month,year)} {useGiveSum('EXPEDITURE',month,year)} useGiveSum이라는 customHook은 type = {수입,지출}에 따라 수입의 총합, 지출의 총합을 return해준다. 위와같은 방식으로 불러온 customHook을 바로 사용해주는 것보다 변수를 새로 하나 선언을 해서 그 변수에 useGiveSum에서 return되는 값을 재사용하는 식으로 수정을 하자 incomeSum = useGiveSum('INCOME',month,year).. 2021. 7. 14.
CustomHook만들어 사용하기 const MONTHS = ['Jan','Feb','Mar','Apr','May','Jun','July','Aug','Sep','Oct','Nov','Dec']; const sumIncome = (lists,month,year) => { const income = lists .filter((list)=>list.month===month&&list.type==='INCOME'&&Number(list.year)===year) .map((list)=>{ return Number(list.amount); }) .reduce((acc,cur)=>{ return acc+cur; },0); return transformation(income); }//월별 수입 합계를 구해주는 함수 const sumExpediture.. 2021. 7. 14.
useState 상태관리 >> Redux 상태관리로 변경 코드리뷰를 받으면서, 위 이미지에 나온 값들을 useState가아닌 redux로 상태관리를 해주는게 좋다고 하셨다. 왜 좋을까? Redux는 애플리케이션의 많은 부분에 필요한 "전역" 상태를 관리하는데 도움이되기 때문이다. useState 상태관리 --> Redux로 변경했기 때문에 useSelector를 이용해서 type,month,year값을 가져와줍니다. action 생성 함수 Reducer Reducer가 return하는 상태값은 기존의 값을 변경해주는 것이아닌, 복사를 한 후, 덮어씌우기를 해주는 방식이다 따라서 spread문법이 사용된다. CombineReducer Reducer가 2개이므로 redux의 combineReducer를 사용해주었다. 2021. 7. 14.
React - useReducer useReducer useState의 대체 함수이다. (state,actioin) => newState의 형태로 reducer를 받고 dispatch 메서드와 짝의 형태로 현재 state를 반환합니다. 많은 수의 하윗값을 포함하는 복잡한 정적 로직을 만드는 경우나 다음 state가 이전 state에 의존적인경우에 보통 useState보다 useReducer를 선호한다. 또한 useReducer는 자세한 업데이트를 트리거 하는 컴포넌트의 성능을 최적화 할 수 있게 해준다. 왜? --> callback 함수 대신에 dispatch를 전달 할 수 있기 때문에 예시) Counter 예시 state와 dispatch에 어떠한 값이 담길까? 라는 궁금증에 console.log를 통해 확인 state에는 initia.. 2021. 7. 13.
React 공식문서 - Custom Hook Hook 사용규칙 최상위(at the top level)에서만 Hook을 호출해야 한다. 반복문, 조건문, 중첩된 함수 내에서 Hook을 실행하면 안된다. React 함수 컴포넌트 내에서만 Hook을 호출해야 한다. 일반 JavaScript 함수내에서는 Hook을 호출하면 안된다. + Hook을 호출할 수 있는 곳이 추가로 한군데 더 존재한다 어디? 바로 CustomHook내부이다. CustomHook을 왜 만들어서 사용해줄까? 자신만의 Hook을 만들면 컴포넌트 로직을 함수로 뽑아내서 재사용할 수 있다. ex) 공식문서에 나와있는 예시 Custom hook을 사용하기 전 친구가 온라인 상태인지 아닌지에 대한 메세지를 표시하는 컴포넌트 FriendStatus 컴포넌트 내부에 사용된 로직을 FriendLi.. 2021. 7. 13.