함수 정의문, 함수 리터럴 모두 function 키워드를 사용하여 함수를 정의한다
하지만 함수는 Function() 생성자를 통해서도 정의될 수 있다
const f = new Function("x", "y", "return x + y")
Function() 생성자는 문자열을 받고, 익명 함수를 생성한다
배열은 아니지만 배열처럼 사용 가능한 유사 배열 처럼
함수는 아니지만 호출이 가능한 객체가 있다
호출 가능 객체는 함수 호출 표현식을 통해 호출할 수 있는 객체다
모든 함수는 호출 가능 객체이지만, 모든 호출 가능 객체가 함수는 아니다
IE 8버전 이하에서는 alert() 등을 호출 가능 객체로 사용하였지만 점점 없어지는 추세
호출 가능 객체의 일반적 형태는 RegExp 객체다
대부분 브라우저에서 RegExp의 exec() 메소드를 호출하는 대신 RegExp 객체를 직접 호출할 수 있다
넷스케이프의 호환성을 확보하기 위해 여러 벤더의 호환 제품이 지원하는 비표준이다
호출할 수 있다고 호출하는 코드를 작성하진 말자
곧 제거될 기능