Development/JavaScript, jQuery, ...(535)
-
전역객체, 전역변수, this바인딩
전역객체, 전역변수, this바인딩 전역변수는 전역객체(window)의 프로퍼티로 접근가능합니다. 자바스크립트에서 함수를 호출하면 this는 자동으로 전역객체에 바인딩됩니다. 소스 코드 출처:
-
메소드 호출시 this바인딩
메소드 호출시 this바인딩 객체의 프로퍼티가 함수일 경우, 이함수를 메소드라고 합니다. 이 메소드를 호출할 때, 메소드 내부 코드에서 사용된 this는 해당 메소드를 호출한 객체로 바인딩됩니다. 소스 코드 출처: this 호출 도식도
-
arguments 객체 이용
arguments 객체 이용 매개변수 개수가 정확하게 정해지지 않은 함수 구현시 사용 전달된 인자의 개수에 따라 서로 다른 처리를 해줘야 하는 함수를 구현해야할 경우 사용 인자의 개수에 상관없이 각각의 값을 모두 더해 리턴하는 함수 소스 코드 출처:
-
arguments 객체
arguments 객체 구성 구성 요소설명함수 호출 시 넘겨진 인자(배열 형태)함수를 호출할 때 인자는 인덱스 번호로 저장됩니다. (첫 번째인자는 0번 인덱스, 두번째는 인자는 1번 인덱스)callee 프로퍼티현재 실행중인 함수의 참조값length 프로퍼티호출할 때 넘어온 인자의 개수. 배열과 유사하게 동작하지만, 배열이 아니므로 배열 메소드를 사용할 경우 에러가 발생합니다. 소스 코드 출처: arguments객를 출력하여 함수 인자가 달라짐에 따라 이 객체의 값이 어떻게 달라지는 확인할 수 있습니다. Arguments[1] 0: 1 callee: function sum(arg1, arg2) { length: 1 __proto__: Object Arguments[2] 0: 1 1: 2 callee: fu..
-
매개변수
매개 변수 함수를 호출하는 쪽과 호출된 함수를 연결하는 매개가 되는 변수 다른 C와 같은 엄격한 언어와 달리, 자바스크립트는 함수를 생성할 때 지정한 매개 변수보다 많거나 적은 매개 변수를 사용하는 것 허용 //원래 매개변수외에 추가된 매개 변수 alert('원래 매개변수','추가된 매개 변수'); //원래 두개의 매개변수를 명시해야 하지만 하나를 제거한 경우 prompt('원래 매개 변수'); 소스 코드 출처: 넘겨 지지 않은 인자에러 발생하지 않고 undefined 출력됨초과된 인자에러 발생하지 않고 무시됨자바스크립트의 이러한 특성 때문에 런타임시 호출된 인자의 개수를 확인하고 이에 따라 동작을 다르게 해줘야 합니다.
-
함수 객체의 length 프로퍼티
length 프로퍼티 함수가 정상적으로 실행 될 때 기대되는 인자의 개수 소스 코드 출처: 함수 선언 시 정의한 인자 개수가 출력됨을 확인할 수 있습니다.