[JavaScript] JavaScript / argument 객체
자바( Java ) 1. 정적 형 지정 : Static typingint 형식의 변수를 생성하면, 정수만 담을 수 있다.member형식의 참조변수를 생성하면, member 객체만 담을 수 있다. 2. 강한 형 검사 : Strong type checkingtype이 일치하지 않다면, 컴파일 오류를 발생!자바 스크립트 ( JavaScript ) 동적 형 지정 : Dynamic typing자바와 다르게 대입될 자료에 의해 변수의 자료형이 결정된다. 자료형boolean : true 와 falsenumber : 정수와 실수를 모두 표현 (대표적인 상징 값)NaN : 숫자가 아니다.Number, MAX_VALUE : 양수 무한대Number, MIN_VALUE : 음수 무한대String : 문자열, ' ' or " " 로 표현undefined : 정의되지 않은 값, 값을 할당하지 않은 변수의 값null : 존재하지 않은 값function : 함수, 객체를 생성할 수 있는 역할null : 변수는 있으나, 해당 변수가 참조하는 객체가 없을 경우undefined : 애초에 참조할 수 있는 변수가 없을 경우, 변수가 초기화되지 않는 경우arguments 객체 ☆typeof arguments =>>object자바 스크립트에서는 함수를 호출할 때 함수 형식에 맞춰 인자를 넘기지 않아도 에러가 발생하지 않는다.정의된 인자보다 적게 함수를 호출했을 경우, 넘겨주지 않은 인자에는 특별한 값 undefined가 할당됨반대로 정의된 인자보다 많게 함수를 호출했을 경우, 에러가 발생하지 않고 초과된 인수는 무시됨. =>> 런타임 시 호출된 인자의 개수를 확인하고 이에 따라 동작을 다르게 해줄 수 있다. 이를 가능하게 하는게 바로 arguments 객체함수를 호출할 때 인수들과 함께 암묵적으로 arguments 객체가 함수 내부로 전달됨.arguments 객체는 함수를 호출할 때 넘긴 인자들이 배열 형태로 저장된 객체를 의미함.실제 배열이 아닌 마치 배열 형태처럼 숫자로 인덱싱된 프로퍼티가 있는 객체 ==> 유사 배열 객체length 프로퍼티 : 호출할 때 넘겨진 인자의 개수callee 프로퍼티 : 현재 실행 중인 함수의 참조값**배열과 유사하게 동작하지만, 배열은 아니므로 배열 메서드를 사용하면 에러가 발생매개변수 개수가 정확하게 정해지지 않은 함수를 구현전달된 인자의 개수에 따라 서로 다른 처리를 해줘야하는 함수를 구현