프론트엔드 개발자를 위한 자바스크립트 프로그래밍 공부/5장 참조타입
함수 프로퍼티와 메서드
북가좌동회오리바람
2019. 1. 29. 16:48
함수는 객체이다. 따라서 메서드와 프로퍼티를 가진다.
모든 함수에 공통인 프로퍼티는 length 와 prototype이다.
length : 함수가 넘겨받을 것으로 예상하는 이름 붙은 매개변수의 숫자
prototype : 모든 참조 타입의 인스턴스 메서드가 존재하는 곳.
toString(), valueOf() 같은 메서드가 존재 한다.
apply(), call() 이라는 함수의 메서드가 있다. 이 둘 모두 소유자인 함수를 호출하면서 this를 넘긴다.
apply() 메서드의 경우 - 첫번째 인자로 this, 두번째 인자로 arguments 또는 Array의 인스턴스를 넘긴다.
call() 메서드는 모든 기능이 apply() 메서드와 같고, 다만 두번째 인자로 arguments 나 Array가 아닌 매개변수를 나열해야 한다.
apply(), call()의 주요 기능은 this(실행 컨텍스트)를 바꾸는 데 있다.
bind() : 새 함수 인스턴스를 만드는데, 그 this는 bind()에 전달된 값이다.