>웹 프론트엔드 >JS 튜토리얼 >JavaScript function_javascript 팁의 길이 속성 사용 소개

JavaScript function_javascript 팁의 길이 속성 사용 소개

WBOY
WBOY원래의
2016-05-16 16:36:171260검색

[1,2,3]. 길이는 3을 얻을 수 있고, "123"도 3을 얻을 수 있습니다. js에 대해 조금 아는 사람은 누구나 이것을 알 것입니다.

그런데 eval.length, RegExp.length, "".toString.length, 1..toString.length는 무엇을 얻나요?

각각 1, 2, 0, 1을 얻습니다. 이 숫자는 무엇을 나타냅니까?

사실 함수의 길이는 형식 매개변수의 수를 얻습니다.

예를 간단히 살펴보겠습니다.

function test(a,b,c) {}
test.length // 3

function test(a,b,c,d) {}
test.length // 4

아주 간단하지만 특별한 것도 있습니다. 실제로 매개변수를 정의하지 않고 함수 내부에서 인수를 통해 매개변수를 호출하면 길이는 0만 얻게 됩니다.

function test() { console.log( arguments );}
test.length // 0

이 함수는 실제로 매개변수를 전달할 수 있고 매개변수도 내부적으로 호출되지만 길이는 전달된 매개변수의 수를 알 수 없습니다.
실제 매개변수의 개수는 함수 실행 시 인수 길이를 통해서만 얻을 수 있습니다.

function test() { console.log( arguments.length );}
test(1,2,3); // 输出 3
test(1,2,3,4); // 输出 4

따라서 함수의 길이 속성은 형식 매개변수의 개수만 얻을 수 있고 실제 매개변수의 개수는 얻을 수 없습니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.