을 JavaScript에 넣으면 변수 arguments
(현재 함수의 모든 인수를 얻을 수 있음)은 Array
이 아니지만 콘솔에 유형이 Arguments
이라고 표시됩니다.JavaScript에서 Arguments 클래스를 참조하는 방법은 무엇입니까?
Arguments
(당신이 예를 들어
String
처럼.), 그래서 그것의 참조가 좋아 얻을 입력하여이 클래스를 얻을 수
:
Arguments = function(){return arguments.constructor;}();
그래서는 다음과 같이 확인 입력 할 수 있습니다
를function foo() {
bar = arguments;
}
foo();
bar instanceof Arguments;
Arguments
개체를 직접 참조 할 수 있습니까? (이전 스 니펫에서와 같이 생성하지 않고)
Ps .: 제가 연구하고있는 프로젝트는 디버깅을 목적으로 한 유형 검사 시스템입니다. MyClass.fileds = {speed: Number, color: String}
과 같은 객체 변수에 대해 유형을 할당 할 수 있습니다.이 유형은 할당 될 때 검사됩니다. 그리고 나는 Arguments
객체를 사용하여 주위를 돌아 왔고, 단지 {args: Arguments}
으로 작성하면 좋을 것입니다.
"왜 그런지 묻지 말고 ..."- XY 문제처럼 보입니다. 왜 그렇게하고 싶습니까? – elclanrs
나는 더 나은 질문은 무엇이라고 생각 하는가? "당신은 직접 인수 객체를 참조해야한다." 그 대답은 더 나은 접근 방식을 허용합니다 – Gabs00
배열로 가져야 만한다면'[] .slice.call (arguments)'할 수 있지만 그렇게해서는 안됩니다. – adeneo