Maison  >  Article  >  interface Web  >  Introduction à l'utilisation de l'attribut length de JavaScript function_javascript tips

Introduction à l'utilisation de l'attribut length de JavaScript function_javascript tips

WBOY
WBOYoriginal
2016-05-16 16:36:171242parcourir

[1,2,3] la longueur peut obtenir 3, "123". la longueur peut également obtenir 3, tous ceux qui connaissent un peu js le savent.

Mais qu'obtiendront eval.length, RegExp.length, "".toString.length, 1..toString.length ?

Nous obtenons respectivement 1, 2, 0, 1. Que représentent ces nombres ?

En fait, la longueur de la fonction obtient le nombre de paramètres formels.

Jetons un coup d'œil rapide à un exemple :

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

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

N'est-ce pas très simple, mais il y a aussi des choses spéciales. Si les paramètres sont appelés via des arguments à l'intérieur de la fonction sans réellement définir les paramètres, la longueur n'obtiendra que 0.

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

Cette fonction peut en effet transmettre des paramètres, et les paramètres sont également appelés en interne, mais length ne peut pas connaître le nombre de paramètres transmis.
Le nombre de paramètres réels ne peut être obtenu que via la longueur des arguments lorsque la fonction est exécutée.

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

Ainsi, l'attribut length d'une fonction ne peut obtenir que le nombre de ses paramètres formels, mais pas le nombre de paramètres réels.

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn