1. 프로그래머스
Lv1. 자릿수 더하기
function solution(n)
{
var answer = String(n).split('').reduce((acc, cur)=>(acc+cur*1),0)
return answer;
}
다른 풀이
var a = (n + '').split('');
var b = 0;
for(var i = 0; i < a.length; ++i) {
b += parseInt(a[i]);
}
return b;
숫자로 풀기
var answer = 0;
while(n!=0){
answer += Math.floor(n%10);
n /= 10;
}
return answer;
2. Next.js 강의
npx create-next-app
설치, 폴더 이름 설정npm run dev
Link
useRouter
pages/post/[id].js
http://localhost:3000/post/122
id에 어떤 내용이 들어와도 이동 가능pages/api/
에 api 생성 가능pages/api/hello.js
pages/api/test/[id].js
getServerSideProps
함수는 Server에서만 실행3. Throttling and Debouncing 강의
✅ Throttling 이 무엇인지 설명할 수 있다.
✅ Debouncing 이 무엇인지 설명할 수 있다.
✅ lodash 를 이용하여 쓰로틀링과 디바운싱을 적용할 수 있다.
✅ 리액트에서 Throttling/Debouncing 시 useCallback을 적용하는 이유를 설명할 수 있다.
Throttling
Debouncing
React에서는 useCallback()
함수를 사용해 이전에 호출한 함수를 반복적으로 호출할 수 있다.
ex. 입력되는 input값을 받을 때
4. React Udemy 강의
React_Next.js_1
ERR_PACKAGE_PATH_NOT_EXPORTED
node를 다운그레이드 하라고 나왔는데 오전에 직접 next.js 프로젝트를 만들었을 땐 같은 최신 node에서도 잘 실행됐다.
다운그레이드 하지 않고 새로 프로젝트를 만들어 강의에서 쓰이는 파일을 복사해왔다.
잘 실행 됨
다른 방법
-> 강의 프로젝트 파일 그대로 열고 package.json
만 내 폴더에 있는 걸로 교체하고 npm i
[식별자].js
[식별자]
로 하고 index.js
만들어도 됨const [count, setCount] = useState(() => initialData())