고차함수
중복제거를 위해서 onClickNumber로 함수를 빼주었다. 하지만 addEvenetListener라는 함수를 실행할 때 onClickNumber('0/1/2/3/4~~') 는 실행 후 undefined를 뱉어내게 된다.
따라서 undefined가 아닌 return을 통해서 함수가 들어가도록 유도해줘야한다. 그런데 함수를 불러오긴 했지만 실행하려는 값이 비어있다? 어떻게 해야할까??
return 안에 함수를 넣어주면 된다.
click을 했을 때 함수를 먼저 실행해주고 실행될 것을 return 값에 담는다. 함수 안에 함수 안에 실행할 것을 담는 것을 고차함수 (high order function) 이라고 한다.
더 나아가서 화살표함수는 {} 와 return이 붙으면 생략가능.
이렇게도 할 수 있다고...
if 중첩줄이기.
if문 다음에 나오는 공통된 절차를 각 분기점 내부에 입력.
분기점에서 짧은 절차부터 실행하게 if문 작성.
짧은 절차가 끝나면 return(함수 내부의 경우)이나 break(for문 내부의 경우)로 중단한다.