arguments.length
åºçº¿
广æ³å¯ç¨
èª 2015å¹´7æ èµ·ï¼æ¤ç¹æ§å·²å¨ä¸»æµæµè§å¨ä¸å¾å°æ¯æï¼å¯å¨å¤§å¤æ°è®¾å¤åæµè§å¨çæ¬ä¸æ£å¸¸ä½¿ç¨ã
arguments.length æ°æ®å±æ§å
å«ä¼ éç»å½æ°çåæ°æ°éã
å¼
ä¸ä¸ªéè´æ´æ°ã
arguments.length ç屿§ç¹æ§ | |
|---|---|
| å¯å | æ¯ |
| 坿䏾 | å¦ |
| å¯é ç½® | æ¯ |
æè¿°
arguments.length 屿§æä¾äºå®é
ä¼ éç»å½æ°çåæ°æ°éãä¼ éçåæ°æ°éå¯è½å¤äºæå°äºå®ä¹çåæ°æ°éï¼åè§ Function.prototype.lengthï¼ãä¾å¦ä¸é¢ç彿°ï¼
js
function func1(a, b, c) {
console.log(arguments.length);
}
func1.length è¿å 3ï¼å 为 func1 声æäºä¸ä¸ªå½¢å¼åæ°ãç¶èï¼func1(1, 2, 3, 4, 5) ä¼è®°å½ 5ï¼å 为 func1 被è°ç¨æ¶ä¼ éäºäºä¸ªåæ°ãåæ ·å°ï¼func1(1) ä¼è®°å½ 1ï¼å 为 func1 被è°ç¨æ¶ä¼ éäºä¸ä¸ªåæ°ã
示ä¾
>ä½¿ç¨ arguments.length
卿¤ç¤ºä¾ä¸ï¼æä»¬å®ä¹äºä¸ä¸ªå¯ä»¥å°ä¸¤ä¸ªæå¤ä¸ªæ°åç¸å ç彿°ã
js
function adder(base /*, num1, â¦, numN */) {
base = Number(base);
for (let i = 1; i < arguments.length; i++) {
base += Number(arguments[i]);
}
return base;
}
è§è
| è§è |
|---|
| ECMAScript® 2027 Language Specification> # sec-arguments-exotic-objects> |