Paramètres de la fonction JavaScript
Paramètres de la fonction JavaScript
Les fonctions JavaScript n'autorisent aucun paramètre (mais les parenthèses contenant les paramètres ne peuvent pas être omises), et les paramètres peuvent également être transmis à la fonction pour être utilisés par la fonction.
Dans l'exemple suivant, les paramètres name et age sont transmis à la fonction hello(), et les valeurs des paramètres sont respectivement Xiaoming et 18.
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> <script type="text/javascript"> function hello(name,age){ document.write("我叫" + name + ",今年" + age + "岁!"); } </script> </head> <body> <input type="button" onclick="hello('小明',18)" value="确定" /> </body> </html>
Erreur de paramètre de fonction JavaScript
Les paramètres de fonction JavaScript n'exigent pas strictement quels paramètres sont des paramètres obligatoires et quels paramètres sont des paramètres facultatifs, donc le nombre de paramètres transmis ne peut pas être égal à la définition Le nombre de paramètres dans une fonction.
Si des paramètres non définis sont utilisés dans une fonction, une erreur de syntaxe (paramètres non définis) sera demandée et le code JavaScript ne fonctionnera pas normalement.
Si les paramètres ont été définis mais ne sont pas transmis correctement, les valeurs des paramètres concernés seront remplacées par undefined et le code JavaScript s'exécutera toujours normalement, comme le montre l'exemple suivant :
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> <script type="text/javascript"> function hello(name,age){ document.write("我叫" + name + ",今年" + age + "岁!"); } </script> </head> <body> <input type="button" onclick="hello('小明')" value="确定" /> </body> </html>
Objet arguments JavaScript
Dans les fonctions JavaScript, il existe un objet arguments spécial, qui enregistre les paramètres de l'appel de fonction en cours sous une forme semblable à un tableau . Par conséquent, les développeurs peuvent facilement accéder aux paramètres de fonction sans définir de noms de paramètres spécifiques :
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> <script type="text/javascript"> function hello(){ document.write("我叫" + arguments[0] + ",今年" + arguments[1] + "岁!"); } </script> </head> <body> <input type="button" onclick="hello('小明',18)" value="确定" /> </body> </html>
Dans l'objet arguments, arguments[0] représente le premier paramètre, et arguments[1] représente le deuxième paramètre, et ainsi de suite.
Astuce :
Habituellement dans les définitions de fonctions, pour faciliter la lisibilité du code, l'objet arguments n'est généralement pas utilisé. Lorsqu’il s’agit d’un nombre indéfini de paramètres ou que l’on simule une surcharge de fonctions, l’objet arguments peut être facilement utilisé.
Détection du nombre de paramètres
En utilisant l'objet arguments, vous pouvez facilement détecter le nombre de paramètres d'une fonction. L'attribut length des arguments, c'est-à-dire arguments.length, est le nombre de paramètres :
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> <script type="text/javascript"> function hello(){ document.write(arguments.length); } </script> </head> <body> <input type="button" onclick="hello('小明',18)" value="确定" /> </html>
Les fonctions Js peuvent transmettre différents paramètres, tels que
.fonction writeNString(strMsg){
document.write(strMsg + "<br>");
>
2. La fonction Js renvoie une valeur. La fonction js peut renvoyer le résultat d'exécution. La fonction peut être considérée comme une boîte noire, et le résultat d'exécution requis est généré après la saisie des données à l'aide de paramètres. comme
fonction one2N(intnumber){
var intTotal = 0;
for(var i=0;i< =intnumber;i++){
intTotal +=i;}
return intTotal;
>
3. Paramètres de passage de valeur et d'adresse des fonctions Js
Passage par valeur : transmettez simplement la valeur de la variable dans la fonction, et la fonction configurera mémoire supplémentaire pour enregistrer la valeur du paramètre, donc cela ne change pas la valeur de la variable d'origine.
Passer l'adresse : transmettre l'emplacement mémoire où la variable est réellement enregistrée dans la fonction, donc si la valeur du paramètre est modifiée dans la fonction, la valeur du paramètre d'origine sera également modifiée en même temps .
Nombres, chaînes et booléens --- passer par valeur
Objets, tableaux et fonctions --- passer par adresse
Objets chaîne ----- - Passer l'adresse
4. Tableau de paramètres de la fonction Js
Les fonctions Js ont toutes un objet Arguments Array, appelé objet arguments. Lors de l'appel d'une fonction pour transmettre des paramètres, même si la fonction ne spécifie pas le nom du paramètre, elle peut toujours utiliser l'objet tableau de paramètres pour obtenir le nombre de paramètres et les valeurs de paramètres individuels.
fonction sumInteger(){
var total = 0;
for(var i=0; i<sumInteger.arguments.length;i++){
total += sumInteger.arguments[i];
}
retour total;
}
//Fonction d'appel
inntotal = sumInteger(100,45,567,234);
document.write("function sumInteger(100,45,567,234):"+inttotal+"<br>");
5. Portée des variables des fonctions JS
Les fonctions JS ont deux types de variables :
Les variables locales (variables locales) sont des variables déclarées dans la fonction. déclarée dans la fonction. Cette variable est utilisée dans la ligne du programme et le code du programme en dehors de la fonction ne peut pas accéder à cette variable.
Les variables globales sont des variables déclarées en dehors de la fonction. Cette variable est accessible par les fonctions et le code de programme de l'ensemble du programme JS.