Cet article vous apporte des connaissances pertinentes sur javascript, qui présente principalement des problèmes liés aux fonctions anonymes, et comprend également du contenu lié à l'imbrication et à la récursivité. J'espère qu'il sera utile à tout le monde.
【Recommandation associée : Tutoriel vidéo javascript】
1. Portée des variables
Réflexion : après avoir déclaré une variable, peut-elle être utilisée n'importe où ?
Réponse : Non.
Exemple : Les variables déclarées avec le mot-clé var dans une fonction ne sont pas accessibles en dehors de la fonction.
Résumé : L'utilisation de variables a une portée.
Division de la portée : portée globale, portée de la fonction et portée au niveau du bloc (fournie par ES6).
Variables correspondant à différents scopes : variables globales, variables locales, variables au niveau bloc (fournies par ES6).
Variables globales : Les variables qui ne sont déclarées dans aucune fonction (définition explicite) ou les variables déclarées dans une fonction en omettant var (définition implicite) sont appelées variables globales.
Portée : il peut être utilisé dans tous les scripts du même fichier d'échange.
Variables locales : Les variables définies à l'aide du mot-clé var dans un corps de fonction sont appelées variables locales, qui ne sont valables que dans le corps de la fonction.
Variables au niveau du bloc : Les variables déclarées par le mot-clé let fourni par ES6 sont appelées variables au niveau du bloc, qui ne sont valables qu'entre "{}", comme les instructions if, for ou while, etc.
Mécanisme de récupération de place
En JavaScript, les variables locales n'existent que pendant l'exécution de la fonction, et pendant ce processus, l'espace correspondant sera alloué aux variables locales sur la mémoire (pile ou tas) pour stocker leurs valeurs, et utilisez ensuite ces variables dans la fonction jusqu'à la fin de la fonction. Une fois l'exécution de la fonction terminée, il n'est pas nécessaire que les variables locales existent. À ce stade, JavaScript libérera automatiquement l'espace mémoire qu'elles occupent via le mécanisme de récupération de place.
Si vous souhaitez conserver la valeur des variables locales pendant le développement, vous pouvez y parvenir des deux manières suivantes :
2. Fonction anonyme
Concept : L'expression dite de fonction fait référence à l'attribution de la La fonction déclarée en variables est utilisée pour effectuer des appels de fonction et des transferts de paramètres. C'est également une autre façon d'implémenter des fonctions personnalisées en JavaScript.
Concept : Une fonction anonyme fait référence à une fonction sans nom de fonction.
Fonction : il peut efficacement éviter la pollution des variables globales et les conflits de noms de fonctions.
Explication : il ne s'agit pas seulement d'une autre représentation de l'expression de fonction, mais peut également être appelée via une déclaration de fonction.
Concept : ES6 introduit une nouvelle syntaxe pour écrire des fonctions anonymes, que nous appelons fonctions fléchées.
Caractéristiques : La syntaxe d'une expression de fonction flèche est plus courte que celle d'une expression de fonction.
3. Imbrication et récursion
Qu'est-ce qu'une fonction imbriquée : C'est une déclaration selon laquelle une autre fonction existe à l'intérieur d'une fonction.
Caractéristiques : La fonction interne ne peut être exécutée que dans le cadre de la fonction externe. Lors de l'exécution de la fonction interne, si une variable doit être introduite, elle sera d'abord recherchée dans la portée actuelle. Si elle n'est pas trouvée, elle sera recherchée. continuera au niveau suivant en recherchant dans la portée jusqu'à la portée globale, nous appelons cette relation de requête en chaîne une chaîne de portée.
Concept : L'appel récursif est un type spécial d'appel dans les appels de fonctions imbriqués. Il fait référence au processus d'appel d'une fonction dans son corps de fonction. Ce type de fonction est appelé fonction récursive.
Ce qui suit est une démonstration utilisant le calcul factoriel comme exemple.
Remarque
Bien que les appels récursifs soient très appropriés lors du parcours de tableaux multidimensionnels à dimensions variables, ils consomment beaucoup de mémoire et de ressources et sont difficiles à implémenter et à maintenir. Par conséquent, les fonctions doivent être utilisées avec. prudence lors du développement d'un appel récursif.
Trouvez la valeur du Nième terme de la séquence de Fibonacci
Comprenez ce qu'est la séquence de Fibonacci
La séquence de Fibonacci est également appelée la séquence du nombre d'or, comme "1, 1, 2, 3, 5, 8, 13, 21… ».
Trouvez le modèle : Cette séquence commence à partir du 3ème élément, et chaque élément est égal à la somme des deux éléments précédents.
Idée d'implémentation du code
【Recommandations associées : Tutoriel vidéo javascript】
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!