본문 바로가기

전체 글81

자바스크립트의 커링(Currying)에 대해서 알아보자 커링이란커링(Currying)은 함수형 프로그래밍에서 나오는 개념. 쉽게 말해서, 함수의 인자를 한 번에 다 받지 않고 나눠서 받게 만드는 과정. 원래 인자가 3개 들어가는 함수라면, 얘를 3단계로 나눠서 하나씩 받을 수 있게 만드는 거임. 한마디로, 함수가 함수(계속 다른 함수)를 반환하면서 인자를 조금씩 받아 나가는 형태 예시예를 들어, 숫자 두 개를 더하는 `add` 함수가 있다고 쳐보자. function add(a, b) { return a + b;}console.log(add(2, 3)); // 5이건 평범한 덧셈 함수. `add(2, 3)` 이렇게 호출하면 `5`라는 값이 바로 반환되지만 커링 형태로 바꾸면 어떤 느낌이냐면...function curriedAdd(a) { return fun.. 2024. 11. 4.
react-i18next 알아보기 코드를 읽어보고있는데 코드에 텍스트가 하나도 없고 t(' dddd')이런 식으로 적혀있어서 이게 뭔가 했는데 react-i18next 를 이용해서 다국어 번역을 적용하기위한 것임을 알게되었다. i18n은 Internationalization의 약어로, "i"와 "n" 사이의 18자를 줄여 부른 표현이다. i18n은 애플리케이션을 여러 언어와 지역에 맞게 조정하여 사용자의 문화와 언어에 맞는 경험을 제공하는 프로세스다. 이는 특히 글로벌 서비스를 제공하는 웹사이트나 앱에서 중요하다. i18n을 통해 애플리케이션이 다양한 언어, 날짜 형식, 통화 표기, 시간대 등을 지원하도록 할 수 있다. react-i18next 설치 및 기본 설정먼저 react-i18next와 i18next 패키지를 설치해야 한다.$ n.. 2024. 11. 3.
호이스팅(Hoisting)과 TDZ(Temporal Dead Zone) 자바스크립트는 변수 선언 방식에 따라 코드 실행 순서와 결과가 달라질 수 있다. 특히 호이스팅(Hoisting)과 TDZ(Temporal Dead Zone)개념을 정확히 이해하는 것은 중요하다. 호이스팅(Hoisting)이란?호이스팅은 자바스크립트의 독특한 동작 방식으로, 변수 선언이나 함수 선언이 해당 범위의 최상단으로 끌어올려지는 현상을 말한다. 즉, 변수가 코드에서 선언되기 전에 사용할 수 있는 것처럼 보이는 이유가 호이스팅 때문이다. 호이스팅은 변수 선언과 함수 선언 모두에 적용되지만, 그 방식은 다르다. console.log(x); // undefinedvar x = 5; 위 코드는 다음과 같이 해석된다:var x; // 선언이 최상단으로 끌어올려짐console.log(x); // undefin.. 2024. 10. 14.
카카오 모빌리티 코딩테스트 후기 카카오모빌리티 신입 공채에 이력서를 넣었는데, 서류 합격 통지를 받았다. 코딩 테스트를 보게 된 것이다. 솔직히 떨어질 줄 알았는데 붙어서 놀랐다. (서류는 넣으면 다 합격시키는 느낌.) 코딩 테스트는 자신 없지만, 일단 도전해보기로 했다. 테스트는 Codility 사이트에서 140분 동안 3문제를 풀었다. 첫 번째 문제는 쉬웠고, 세 번째 문제도 풀 만했다. 둘 다 평범한 백준 문제 같았다. 그런데 두 번째 문제는 리액트를 써서 특정 컴포넌트를 만드는 문제였다. (문제 유출을 하면 안되서 자세한 내용은 말할 수 없다.) 캠은 켜지 않아 편했지만, 외부 IDE 사용이 불가능하고, 복사/붙여넣기도 금지였다. 문제를 하나 풀고 제출해야 하는데, 나는 세 문제 다 풀고 제출해야 하는 줄 알았다. 그러다 언어 .. 2024. 10. 8.