// 화살표 함수 표현식 예시constarrow1=function(name){return`hello, ${name}`;};// 1. function 키워드 삭제 후, 화살표 작성constarrow2=(name)=>{return`hello, ${name}`;};// 2. 인자가 1개일 경우에만, () 생략 가능constarrow3=(name)=>{return`hello, ${name}`;};// 3. 함수 바디가 return을 포함한 표현식 1개일 경우에 {} & return 삭제 가능constarrow4=(name)=>`hello, ${name}`;
2-4. 콜백함수
어떤 다른 함수의 매개변수로 함수를 넘겨주는 것을 의미함
// 일반 함수 사용functioncheckMood(mood){if(mood ==="good"){sing();}else{cry();}}functioncry(){
console.log("Action: CRY");}functionsing(){
console.log("Action: SING");}checkMood("good");// 출력 : "Action: SING"// 콜백함수 사용 예시// checkMood 함수의 2번째, 3번째 매개변수(값)로 sing, cry 콜백함수를 전달 - 함수 표현식functioncheckMood(mood, goodCallback, badCallback){if(mood ==="good"){goodCallback();}else{badCallback();}}functioncry(){
console.log("Action: CRY");}functionsing(){
console.log("Action: SING");}checkMood("sad", sing, cry);// 출력 : "Action: CRY"
3. 참고
3-1. 화살표 함수 표현식 응용
// 1. 인자가 없다면 () or _로 표시 가능constnoArg1=()=>"No args";constnoArg2=(_)=>"No args";// 2-1. object를 return 한다면 return을 명시적으로 작성해야 함constreturnObject1=()=>{return{key:"value"};};// 2-2. return을 적지 않으려면, 소괄호롤 감싸야 함constreturnObject2=()=>{({key:"value"});};