[자바스크립트_개념정리] 함수를 반환/인수로 전달하는 방법
함수는 일반적인 값으로 취급되어 함수가 반환되든 또는 인수로 전달되든 그 함수를 전달할 수 있음
1. 함수를 인수로 받아 다른 함수에 전달하는 방법 (인수로써의 함수)
=> 1 에서 6 사이의 랜덤 숫자가 두 번 출력됨
① callTwice 라는 이름의 함수를 정의 (매개변수자리에 임의의 함수이름을 넣고, 함수가 두번 실행되도록 정의)
② rollDie 라는 이름의 함수를 정의 (주사위처럼 1에서 6까지의 숫자 중 랜덤한 숫자가 나오도록)
③ rollDie 함수를 인수로 받아 callTwice 함수에 전달하여 랜덤한 숫자가 두 번 출력
* 이때 rollDie() 가 아니라 rollDie 인 이유는 callTwice 함수 내에서 실행되게 하기 위해서이다.
(괄호를 붙이면 rollDie함수가 이미 실행되어 나온 숫자가 callTwice 함수에 전달됨)
=> rollDie 함수를 인수로 받아 1부터 6까지의 랜덤 숫자가 10번 반복 실행되는 함수 callTenTimes
2. 함수 내에서 함수를 값으로 반환하는 방법
=> 해당 함수를 호출하는 것이 아니라 함수가 값이 되어 반환되는 것임
팩토리 함수 설정
팩토리 함수 : 함수를 만들어 주는 함수
어떤 값이 최소/최댓값 사이에 있는지 확인하기
=> 범위 안에 있으면 true, 범위 밖에 있으면 false
[ 1. 최소/최댓값을 직접 코드에 입력하는 방법 ]
[ 2. 팩토리 함수 설정하여 활용하는 방법 ]
최솟값, 최댓값을 지정한 함수를 변수에 저장하고, 지정한 값에 따라 다른 버전의 함수를 각각 실행 가능
=> 0세 ~ 18세까지는 child
=> 19세 ~ 64세까지는 adult
=> 65세 ~ 100세까지는 senior