전체 글

문제 내용 🙍‍♂️풀이 function solution(s) { let answer = true; const str = s.toUpperCase(); const stringArray = str.split(""); const pCount = stringArray.filter((item) => "P" === item).length; const yCount = stringArray.filter((item) => "Y" === item).length; if (pCount !== yCount) answer = false; return answer; } /* (풀이) 주어진 문자열 s 를 대문자로 변경하고 split을 이용해 각자의 알파벳으로 나누어진 배열로 만들어 준 뒤 filter함수를 이용하여 해당하는 알파벳..
· React
import { useState } from "react"; const useForm = (initialState = {}) => { const [formData, setFormData] = useState(initialState); const InputChangeHandler = (e) => { const { name, value } = e.target; setFormData({ ...formData, [name]: value }); }; return { formData, InputChangeHandler, }; }; export default useForm; Custom Hook을 이용해 form을 만들때 재활용이 가능하게 만들어봤다. 우선 initaialState의 Default 값을 빈 객체로 만..
· React
메모이제이션(memoization) 이란?⭐ 프로그래밍에서 반복되는 결과를 메모리에 저장 해놓고 다음에 같은 결과가 나올 때 다시 계산할 필요없이 빨리 실행 하는 기법이다. JavaScript에서는 클로저 를 통해 계속 유지되는 저장공간을 만들 수 있다. 두 hooks 는 메모이제이션을 이용한 방법으로 불필요한 렌더링을 막을 수 있으나, 사용 자체로도 프로그램에 사용량이 채워지므로 사용하기 전 신중히 생각 해 봐야한다. useMemo 사용법 📄 const memo = useMemo(() => { return blabla; },[list]) useMemo는 첫번째 인자로 콜백 함수를 두번째 인자로 의존성(dependency) 배열을 받는다. useMemo는 list가 변한다면 콜백 함수를 실행하고 blab..
YunCow
Jr Front-End 🦊