함수 선언의 매개변수와 호출 시 전달하는 인자를 구분합니다.
매개변수는 함수 내부에서 사용할 이름이고 인자는 호출할 때 넣는 실제 값입니다. 기본 매개변수로 인자가 없을 때의 값을 정하고 나머지 매개변수로 여러 인자를 배열처럼 받을 수 있습니다.
introduce에 인수 네 개를 넘기면 첫 번째 호현은 name에 들어가고, 남은 HTML, CSS, JS는 나머지 매개변수 skills에 진짜 배열로 모입니다. skills.length가 3이라 truthy이므로 삼항 연산자가 join 결과를 골라 호현: HTML, CSS, JS가 출력되고, 기술을 하나도 넘기지 않으면 length가 0이라 기술 미입력이 나옵니다.
기본값은 인수가 undefined일 때만 쓰입니다. 첫 인수로 undefined를 넘기면 학습자가 들어가지만, null을 넘기면 null이 그대로 name이 되어 null: 기술 미입력이 출력됩니다. 나머지 매개변수는 매개변수 목록의 맨 끝에만 둘 수 있고, 함수 하나에 하나만 쓸 수 있습니다.
호출 인자 개수가 달라도 JavaScript가 즉시 오류를 내지 않으므로 필수 입력은 직접 검증해야 합니다.
직접 바꿔보세요이름 없이 호출해 기본값 결과를 확인하세요.