[220307] TIL

릿·2022년 3월 7일
0

TIL

목록 보기
10/28

노마드코더 : react 클론코딩강의

state:

데이터가 저장되는 곳, 정적인 언어를 동적으로 만들어 줌!

react의 가장 큰 장점

데이터를 바꿀 때마다 re-rendering가 되어야 하지만, 바뀔 필요가 없는 건 re-rendering가 되지 않아도 되게 할 수 있다는 것!
=> 데이터가 바뀔때마다 컴포넌트를 리렌더링하고 UI를 refresh한다.

re-render를 발생시킬 가장 좋은 방법?!

useState를 사용!
2개의 배열요소를 받고, 첫번째 요소는 우리가 담으려는 data값이고 두번째 요소는 이 data값을 바꿀 때 사용할 modifier이다.
modifier함수를 가지고 state를 변경할 때 컴포넌트가 재생성된다. 새로운 값을 가지고 re-rendering되는 것!

const [counter, setCounter] = React.useState();
setCounter(counter + 1);

백준 코딩테스트 : 나머지

var fs = require('fs');
var input = fs.readFileSync('/dev/stdin').toString().split(' ');
var A = parseInt(input[0]);
var B = parseInt(input[1]);
var C = parseInt(input[2]);

console.log((A+B)%C);
console.log(((A%C)+(B%C))%C);
console.log((A*B)%C);
console.log(((A%C)*(B%C))%C);

풀이과정

  1. 일단 백준이 처음이라 node.js출력이 어떻게 되는지 확인할 필요가 있었다. 그리고 node.js를 쓰는 부분이 입력받은 값을 나누기 위해서만 쓰인다는 걸 알고 뭔가 한결 마음이 편해짐...
  2. 입력값을 문자열 배열로 만들고, 배열 하나하나를 숫자로 변환해서 변수에 할당, 나머지는 그저 문제를 복붙해서 넣은게 끝. 근데 이렇게 푸는 거 맞겠지?

다른 사람 풀이

  1. input값을 map을 써서 할당하는 사람이 많았다. 이것도 node.js로 풀 때 디폴트로 쓰는 옵션인가? 조금 더 찾아보자.
  2. console.log(solution(input[0], input[1], input[2]))이 아니라
    solution(input[0], input[1], input[2])라고 해도 결과값이 나오는 모양이다. 하긴, 프로그래머스에서는 return answer라고만 써도 결과값이 나오니께... 내가 너무 vs cord를 많이 썼나보다.
profile
항상 재밌는 뭔가를 찾고 있는 프론트엔드 개발자

0개의 댓글