Maison > interface Web > js tutoriel > le corps du texte

Explication détaillée des attributs internes de la fonction JavaScript et des exemples de méthodes de fonction_compétences Javascript

WBOY
Libérer: 2016-05-16 15:10:32
original
1177 Les gens l'ont consulté

Une fonction est un bloc de code événementiel ou réutilisable qui s'exécute lorsqu'elle est appelée.

Les fonctions sont des objets avec leurs propres propriétés et méthodes. Tout d’abord, jetons un coup d’œil visuel à la sortie de la méthode d’attribut de fonction sous la console :

Les attributs internes d'une fonction ne doivent inclure que deux objets spéciaux : les arguments et this.

Les attributs de fonction incluent : la longueur et le prototype

Les méthodes de fonction (non héritées) incluent : apply() et call()

Méthodes de fonction héritées : bind(), toString(), toLocaleString(), valueOf()

Je ne connais pas les autres pour le moment, j'en rajouterai plus tard

1. Attributs internes de la fonction

A l'intérieur de la fonction, il y a deux objets spéciaux, les arguments et ceci.

attribut arguments

arguments est un objet de type tableau qui contient tous les paramètres passés dans la fonction. Le but principal des arguments est de sauvegarder les paramètres de la fonction, mais cet objet a un attribut d'appelé, qui est un pointeur vers la fonction qui possède cet objet arguments. , comme suit C'est une fonction factorielle très classique.

function factorial (num){
if(num <= 1){
return 1;
} else{
return num * factorial(num-1); 
}
}
Copier après la connexion

L'algorithme récursif est généralement utilisé pour définir la fonction factorielle. Comme le montre le code ci-dessus, cette définition convient lorsqu'il existe un nom de fonction et que le nom de la fonction ne changera pas à l'avenir. Cependant, l'exécution de cette fonction est étroitement couplée au nom de fonction factoriel. Afin d'éliminer ce phénomène de couplage étroit (changements de nom de fonction, etc.), arguments.callee peut être utilisé.

function factorial(num){
if(num<=1){
return 1;
} else{
return num * arguments.callee(num-1);
}
}
Copier après la connexion

Le nom de la fonction factorial n'est plus référencé dans le corps de la fonction factorial() réécrite. De cette façon, même si le nom de la fonction est modifié, l'appel récursif peut se terminer normalement. Par exemple :

var trueFactorial = factorial; //改变原函数体的指针(保存位置)
factorial = function (){ //factorial 指向返回0的新函数
return 0;
}
alert(trueFactorial(5)); //120
alert(factorial(5)); //0
Copier après la connexion

Si arguments.callee n'est pas utilisé, alors trueFactory(5) renvoie également 0

;

cet attribut

2. Méthodes de fonction

Chaque fonction contient deux méthodes non héritées : apply() et call(). Le but de ces deux méthodes est d’appeler des fonctions dans un domaine spécifique (je ne comprends pas quand je vois cela). Leur véritable pouvoir réside dans la capacité d’élargir le périmètre dans lequel la fonction s’exécute

;

Cet éditeur vous présentera tout ce qui concerne les propriétés internes et les méthodes de fonction des fonctions JavaScript. J'espère que cela vous sera utile !

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!