Javascript 에서 arguments 대상 상세 설명
다음 사례 의 함수 입 니 다. 우 리 는 어떻게 들 어 오 는 매개 변수 에 따라 서로 다른 처 리 를 합 니까?
function addAll () {
// What do we do here?
}
// Should return 6
addAll(1, 2, 3);
// Should return 10
addAll(1, 2, 3, 4);
다행히도 자 바스 크 립 트 는 위 와 같은 상황 을 처리 할 수 있 는 arguments 대상 이 있 습 니 다.arguments 대상 은 클래스 배열 대상 입 니 다. arguments 대상 의 상세 한 상황 을 알 고 싶 으 면 여 기 를 찌 르 십시오. 우 리 는 arguments 대상 을 사용 하여 상례 를 바 꿉 니 다.
function addAll () {
var sum = 0;
for (var i = 0; i < arguments.length; i++) {
sum += arguments[i];
}
return sum;
}
// Returns 6
addAll(1, 2, 3);
// Returns 10
addAll(1, 2, 3, 4);
위 에서 우 리 는 arguments 대상 이 하나의 배열 대상 이 라 고 말 했 습 니 다. 다음은 테스트 해 보 겠 습 니 다.
function getName() {
console.log(Array.isArray(arguments));
}
//will output false
getName("benjamin");
상술 한 테스트 결 과 를 통 해 알 수 있 듯 이 그것 은 하나의 수조 대상 이 아니라면 수조 대상 과 어떤 차이 가 있 습 니까?자세 한 내용 은 여 기 를 찍 어 주세요.
다음 예 를 실행 하면 오류 가 발생 합 니 다:
function sortArgs () {
// Uncaught TypeError: undefined is not a function
sorted = arguments.sort()
return sorted;
}
sortArgs();
우 리 는 아래 와 같이 하나의 배열 대상 을 배열 대상 으로 바 꿀 수 있다.
function sortArgs () {
// Convert arguments object into a real array
var args = [].slice.call(arguments);
// Now this will work!
sorted = args.sort()
return sorted;
}
//will output [1, 2, 3]
console.log(sortArgs(1,3,2));
만약 당신 이 이 글 이 당신 에 게 도움 이 된다 고 느낀다 면, 더 필요 한 사람 에 게 전달 하 기 를 바 랍 니 다.글 이 타당 하지 않 은 점 은 댓 글 을 수정 하 는 것 을 환영 합 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.