/ / JavaScript: fonction en fonction. Langage de programmation JS

JavaScript: fonction en fonction. Langage de programmation JS

Les idées de formation de contenu dynamique sur la ressource Web sont devenues la norme. Les pages statiques et la création de sites modèles ont enfin terminé leur mission.

Cependant, une ressource Web moderne ne doit pas nécessairement être un ensemble de pages générées par le serveur et mises à jour par le navigateur (JS + AJAX).

fonction javascript en fonction

Une ressource Web au moment où un visiteur arrive peut être quelques en-têtes pour le protocole, du texte dans la "tête", quelques lignes de code dans le "corps" et c'est tout. Le reste "penser à»Dans le processus de travail d'un visiteur - c'est un site idéal ou qui aspire à l'être.

Lieu de description et essence des fonctions

JavaScript est expérience acquise au cours de nombreuses décennies.Il a une histoire de développement significative, une équipe moderne et qualifiée de créateurs et de développeurs. Le langage est bien pensé, fiable, beau et offre une réelle opportunité aux développeurs d'écrire du code décent et de s'améliorer.

erreur javascript l'opération n'est pas sécurisée

Le concept d'algorithme en dehors d'une fonction est ici absentprincipe. Bien sûr, le développeur peut insérer un script n'importe où sur la page, y placer le code et il sera exécuté. Mais à quoi ça sert du code qui n'est exécuté qu'une seule fois: en charge (surcharge) pages? Sauf si vous pouvez définir les valeurs initiales de certaines variables insignifiantes.

Le script est l'endroit où les variables requises sont décrites etfonctions plutôt qu’un bon morceau de code écrit pour lui-même. C'est l'ensemble des fonctions qui est peut-être essentiel et significatif - leur connexion directe mutuelle, mais le plus souvent, tout est différent. Le lieu de la description de la fonction et le lieu de son application ne sont pas du tout les mêmes.

Il n'est pas du tout nécessaire que la fonction soitappeler une autre fonction directement, cela peut être fait indirectement grâce à la génération de code dynamique. Le visiteur prend une décision dans le cadre de ce code et un système de fonctions complètement différent est déclenché.

Dynamique fonctionnelle

La dynamique fonctionnelle ne concerne pas seulementpas tant les gestionnaires affectés aux éléments de la page, ce sont des fonctions qui forment les éléments de la page, et les gestionnaires immédiats peuvent également changer.

retour javascript

L'action sur la page se déroule en fonction de ses éléments et du comportement du visiteur sur celle-ci. Les mouvements de la souris, les boutons du clavier, les clics, les événements d'éléments et d'autres circonstances conduisent au lancement des fonctions souhaitées.

Au départ, il n'y a pas de séquence etil n'y a pas de parallélisme. Il y a une réponse adéquate de la ressource Web aux événements. La rapidité avec laquelle JavaScript exécutera une fonction particulière dépend de nombreux facteurs techniques (ordinateur, lignes de communication) et sémantiques (logique de l'algorithme, domaine, signification du problème).

En fait, on peut affirmer que quelque chose a fonctionné.en parallèle, et quelque chose se réalisera après quelque chose, mais il n'y a pas de sens particulier à cela. Il est important que les fonctions JavaScript soient la capacité de créer une réponse adéquate aux actions du visiteur.

C'est une nouvelle réflexion en développement: un traitement de l'information distribué dans les entrailles d'un seul navigateur!

Syntaxe des variables et des fonctions

Les variables JavaScript sont placées comme dans une balise"Script" et dans le corps de la fonction. Les fonctions sont définies de la même manière. Il n'est pas utile d'écrire une autre fonction à l'intérieur de la fonction, mais cela peut être nécessaire pour des raisons diverses et bien fondées.

Une description de fonction commence généralement par le mot-clé "function", suivi de son nom, d'une liste d'arguments séparés par des virgules entre parenthèses et du corps de la fonction entre accolades.

javascript passe la fonction à la fonction

Cet exemple décrit deux fonctions qui fournissent une communication AJAX entre la page et le serveur. La variable scXHR est décrite ci-dessus, elle est donc disponible à la fois dans InitXML et dans WaitReplySC.

Nom de la fonction et paramètre "fonction"

Une option asynchrone a été présentée ici lorsqueLa fonction JavaScript de la fonction est appelée après la réponse du serveur. En même temps, ayant reçu une réponse du serveur, WaitReplySC se réfère aux balises de page, les remplit avec les informations reçues et appelle d'autres fonctions qui peuvent bien initier la prochaine requête au serveur.

Il est également important de noter ici que WaitReplySC est une fonction. Mais dans la ligne scXHR.onreadystatechange = WaitReplySC il est passé en paramètre.Il s'agit d'une règle générale pour passer des fonctions à d'autres fonctions en tant que paramètres. Des parenthèses spécifiées et leur a passé son ou ses paramètres - la fonction sera exécutée immédiatement. Il n'a donné que le nom, alors quoi? L'appel de fonction sera effectué par celui qui a reçu son nom.

La fonctionnalité AJAX vous permet de faire Appel de fonction JavaScript via les données reçues du serveur. En effet, lors de l'envoi d'une requête au serveur, telle ou telle fonction peut ne pas "savoir" du tout à quelle fonction elle se réfère et avec quelles informations.

Sortie de fonction et résultat

Tous les opérateurs peuvent être écrits dans le corps de la fonction.langue, qui, en fait, est destinée à cela. Dans une fonction, il existe des variables qui sont décrites à l'intérieur et à l'extérieur de celle-ci, mais pas celles qui sont décrites dans d'autres fonctions.

appel de fonction javascript

Si vous voulez que la fonction retournerésultat, vous pouvez utiliser l'opérateur return de JavaScript: return. Il peut y avoir un nombre suffisant d'instructions return dans le corps d'une fonction. Il n'est pas du tout nécessaire qu'ils renvoient tous le même type de résultat.

Habituellement, les développeurs ont beaucoup de respect pour cette fonctionnalité et, selon la situation, prennent la décision de quitter la fonction dès que possible.

Il n'est pas du tout nécessaire de parcourir tout l'algorithme de la fonction lorsque vous pouvez quitter prématurément.

Arguments de fonction

Les arguments sont transmis à la fonction sous forme de liste viavirgule, sont entre parenthèses et apparaissent immédiatement après son nom. Les noms de variables sont utilisés comme arguments, mais les valeurs peuvent également être transmises directement. Pour passer une fonction à une fonction en JavaScript, il vous suffit de spécifier son nom sans parenthèses.

variables javascript

La variable arguments est disponible dans la fonction, avoir la propriété longueur. Vous pouvez faire référence à n'importe quel argument de fonction via arguments [0], arguments [1], ... jusqu'aux derniers arguments [arguments.length-1].

Le changement d'argument de fonction est vraiment à l'intérieurfonction, mais pas en dehors de celui-ci. Pour modifier quelque chose en dehors de la fonction, vous devez utiliser l'opérateur de retour JavaScript, par lequel vous transmettez la valeur requise vers l'extérieur.

Une fois la fonction terminée, tout ce quia été associée à son exécution, sera détruite. Pendant l'exécution, une fonction peut modifier des variables externes, à l'exception de celles décrites dans d'autres fonctions, y compris les fonctions internes.

Arguments a une propriété callee quiest destiné à appeler une fonction en cours d'exécution à un moment donné. Si vous vous appelez, alors la variante JavaScript de la fonction dans la fonction vous permettra d'implémenter la récursivité.

Utilisation des fonctions

La principale préoccupation des fonctions est de servir les événementsle navigateur. Pour ce faire, presque toutes les balises ont la possibilité de spécifier le nom de l'événement et la fonction qui le gère. Plusieurs événements peuvent être spécifiés, mais une seule fonction est spécifiée par événement.

Une fonction peut servir plusieurs éléments de page et plusieurs événements. En utilisant le paramètre "this", vous pouvez transmettre les informations à la fonction d'où elles ont été appelées.

L'utilisation classique des fonctions JS est -gestionnaires d'événements sur les éléments. Dans cet exemple, la fonction scfWecomeGo () ou scfWelcomeCancel () sera appelée dans le formulaire de connexion / déconnexion du visiteur, et lorsque le mode est sélectionné, scfMenuItemClick (this).

retour javascript

Dans ce dernier cas, le paramètre "this" est passé,qui vous permet de savoir miraculeusement de quelle diva l'appel est originaire. En général, JavaScript est si bien implanté dans le DOM et il vous permet de naviguer dans ses éléments si facilement, de collecter les informations nécessaires, que la dynamique de la page peut être tout simplement imprévisible.

La fonction n'a pas à renvoyer de chaînecaractères, nombre ou autre fonction. Il peut renvoyer un élément HTML à part entière, dans lequel il y aura le nombre d'éléments requis, avec ses propres gestionnaires d'événements.

En plaçant un tel élément sur la page, le développeur crée de nouvelles fonctionnalités, ce qui est bon pour résoudre le problème et répondre aux intérêts des visiteurs, mais plutôt difficile en termes de mise en œuvre.

En démarrant un tel développement pleinement fonctionnel,il est facile de se confondre dans son propre code, dans les appels de fonction, dans les moments où tel ou tel contenu de telle ou telle partie de la page est formé. Avant de prendre cette direction de développement, cela ne fait pas de mal de tout bien peser.

À propos de la pensée distribuée

Le développeur doit penser au niveau de tous les éléments de la page, au niveau de tous les événements et avoir une idée claire de la façon dont tout se passe réellement. C'est difficile, mais le travail en vaut la peine.

fonctions de tableau javascript

En JavaScript, l'exécution d'une fonction peut êtredifféré jusqu'à un événement, et il peut y avoir de nombreuses fonctions de ce type, et les événements ont tendance à se propager et à tomber dans la "portée" de divers gestionnaires.

erreur javascript l'opération n'est pas sécurisée

Dans cet exemple, quelque part plus tôtla fonction qui a déclenché la création de l'élément de menu de navigation dans les fichiers. L'organisation de la page est supposée, c'est-à-dire qu'il n'y a que sept fichiers dans la fenêtre qui peuvent être supprimés et traités. Vous pouvez naviguer soit en cliquant sur une ligne du fichier, soit par les flèches du clavier, soit par blocs de sept lignes.

Chaque cas a ses propres fonctions.En d'autres termes, dans un exemple aussi simple, vous devez écrire une douzaine de fonctions qui répondront à divers événements, et certaines de ces fonctions géreront diverses options et situations qui ne sont pas du tout des événements.

exécution de la fonction javascript

Par exemple, lors de la suppression d'une ligne, les lignes du bas doiventdéplacer vers le haut. Pour ce faire, vous devrez soit faire une nouvelle sélection, qui est triviale et gourmande en ressources, soit recalculer les lignes, utiliser des fonctions de tableau en javascript et atteindre élégamment l'objectif.

Arguments et résultats de la fonction

JavaScript vous permet de convertir votre code enÉtat "entièrement fonctionnel". C'est normal lorsque l'argument de fonction est une fonction. Une variante est autorisée lorsque la fonction renvoie une fonction. JavaScript prend cela assez calmement.

C'est un bon mécanisme, mais assez compliqué à mettre en œuvre. Techniquement, tout est permis, sémantiquement, seul un développeur qualifié peut fournir la logique de transfert du «fonctionnel».

javascript passe la fonction à la fonction

En JavaScript, une fonction dans une fonction - où que vous allieza continué, mais quand une fonction génère une fonction, et celle-là, il est assez difficile de garder une trace de la logique. En fait, la question n'est pas d'appliquer les qualifications, mais d'obtenir un résultat sûr et correct.

La préoccupation du développeur est claire et simple. Il y a un problème, vous avez besoin d'une solution, pas une erreur comme "Erreur JavaScript l'opération n'est pas sécurisée", un écran vide ou l'arrêt de l'ensemble du moteur de navigation.

Si l'argument est une fonction, alorsle développeur passe une variable avec des propriétés spéciales, c'est-à-dire qu'il ne s'agit pas d'un nombre, ni d'une chaîne, ni d'un objet. Mais l'utilisation d'un tel argument peut conduire au fait que les variables externes changeront et que le résultat de l'exécution de la fonction le sera. En fonction de ce qui est transféré, des modifications adéquates seront apportées.

Exécution du code généré

Implémenter l'exécution du code généré danstandis qu'un autre code est en cours d'exécution, vous pouvez utiliser "eval". Ce n'est pas considéré comme une excellente solution, mais souvent vous ne pouvez pas compliquer le code avec des fonctions inutiles, mais vous limitez à la formation banale d'une ligne de code JavaScript et l'exécutez simplement.

la fonction renvoie la fonction javascript

Dans cet exemple, une ligne d'insertion est formée enagissant div quelques informations. Le nombre div et le contenu de l'information sont différents pour des positions différentes, par conséquent, une telle solution dans cette situation est garantie de ne pas fournir la situation "erreur javascript l'opération n'est pas sécurisée", mais donnera de manière fiable l'effet souhaité.

L’exemple de l’auteur n’est pas une image

Une nuance du paradigme JavaScript de la fonction dans la fonction

S'il y a une opportunité de se passer de fioritures, il vaut mieux l'utiliser. Toutes les options ci-dessus sont bonnes. Bien sûr, dans de nombreux cas, c'est la seule solution.

Un exemple classique de récursivité: le calcul de la factorielle. Il est assez difficile d'écrire un algorithme qui va boucler, mais il est très facile de dépasser les limites de la valeur. Le factoriel croît trop vite.

Cependant, la récursivité et une fonction appelant une autre fonction qui peut effectuer un rappel valide sont la norme.

Par exemple, une table régulière. Il peut y avoir d'autres tableaux dans le tableau. La nidification ne peut pas être limitée. Ecrire un ensemble distinct de fonctions pour chaque table est trop luxueux.

Il existe de nombreux exemples de ce type, et tousce seront des tâches réelles et urgentes, pas du tout du domaine de la programmation. C'est pourquoi le problème réside précisément dans le fait qu'il est impossible de se passer des excès, le système de fonctions créé, ou plutôt son débogage et son fonctionnement fiable ultérieur, devient la préoccupation non de JavaScript, mais du développeur.

J'ai aimé:
0
Messages populaires
Développement spirituel
Nourriture
yup