array.map(callbackFunction(currenValue, index, array), thisArg)
const numberMapArr = numberArr.map((item) => {
return (item % 2 === 0) ? 'even' : 'odd'; // 연산한 결과값을 넣어 배열 반환
});
각 요소를 다른 값으로 맵핑한 새로운 배열을 반환한다.
const numberFilterArr = numberArr.filter((item) => {
return item % 2 === 0; // 해당조건에 부합으면 item을 넣어 배열 반환
});
주어진 배열을 순회하면서 함수의 반환값이 true에 해당하는 요소로만 구성된 새로운 배열을 생성하여 반환한다.
const result = numbers.reduce((number1, number2) => number1 + number2);
첫번째 인자(accumulator)서부터 시작해서 배열값인 두번째 인자(currentvalue) 을 순회하며 accumulator+=currentvalue 을 실행.
함수를 잘 활용하면 될거 같은데 아직은 어색해서 잘 활용하지 못했다. 여러번 사용하면서 익숙해지면 더 편하게 짤 수 있을 것 같다. 앞으로 많이 활용해보도록 노력해야겠다.
npm init -y
npm install @babel/core @babel/preset-env @babel/plugin-transform-modules-commonjs @babel/plugin-transform-runtime
npm run test
이런 형식으로 test.js파일을 실행시킨다.
jest import 오류를 통해서 다른 .js파일을 import활용할 수 있었다.
// 기본 형식
test("테스트 설명", () => {
expect("검증 대상").toXxx("기대 결과");
});
// toThrow 예시
test("throw when id is non negative", () => {
expect(() => getUser(-1)).toThrow("Invalid ID");
});
함수에서 오류의 경우에서 return throw Error("Error message")
Error를 throw해주면 Error를 검증할 수 있다.
오늘 과제는 예외처리가 많았고, 생각보다 시간이 오래걸렸다.
예외 처리를 하다보면 내가 뭘 처리하고 있었는지 길을 잃어버릴때가 많았다.
그리고 예외처리를 하면 할수록 코드가 길어지고 더러워지는데 나중에 코드 정리를 새롭게 해야겠다고 생각이 들었다.
소중한 정보 잘 봤습니다!