775 Shares 7038 views

JavaScript: fonction de fonction. Langage de programmation JS

Des idées de contenu dynamique pour former web-RESSOURCES sont devenus la norme. pages et modèles statiques Web design finalement terminé leur mission.

Cependant, le Web moderne des ressources ne doit pas être représenté par un ensemble de pages générées par le serveur et actualiser le navigateur (JS + AJAX).

référentiel Web au moment de l'arrivée du visiteur peut être deux ou trois titres pour l'enregistrement, un texte dans la «tête», quelques lignes de code dans le «corps» et tout. Le reste de « concevoir » dans le processus de visiteur – c'est un site idéal, ou aspirant à l' être.

Placez la description et la nature des fonctions

опыт, наработаный многими десятилетиями. JavaScript – c'est une expérience de décennies narabotany. Il a une histoire importante du développement, les développeurs modernes créateurs d'équipe qualifiée. Langue bien pensé, fiable, beau et donne une réelle opportunité pour les développeurs d'écrire du code pour une vie décente et l'amélioration de soi.

Le concept d'un algorithme est une fonction ici n'existe pas en principe. Bien sûr, le développeur peut importe où sur la page d'insérer du code de script pour mettre en et il sera exécuté. страницы? Mais quel est le point dans le code, qui est exécuté une seule fois: lors du chargement (rechargeant) la page? Est-il possible de définir les valeurs initiales de ce que certaines variables non significatives.

Script – cet endroit est la bonne description des variables et des fonctions, plutôt que d' un bon morceau de code écrit pour elle-même. Il est un ensemble de fonctions est essentielle et importante, peutêtre – leur connexion directe mutuelle, mais le plus souvent il est différent. Placer la description de la fonction et le lieu de son application n'est pas la même chose.

Il ne faut pas que la fonction appellera une autre fonction directement, mais il peut être fait indirectement par la formation de code dynamique. Un visiteur prend une décision dans ce code et fonctionne système fonctionne tout à fait différentes.

dynamique fonctionnelle

dynamique fonctionnelle – est non seulement et pas tant des gestionnaires affectés aux éléments de la page sont des fonctions qui forment les éléments de la page et des gestionnaires immédiats, aussi, peuvent changer.

L'action se déroule sur la page, en fonction des éléments et le comportement des visiteurs sur elle. Le mouvement de la souris, le clavier, les boutons, les clics, les événements, les éléments et d'autres circonstances conduisent au lancement des fonctions nécessaires.

A l'origine il n'y a pas de cohérence et il n'y a pas parallèle. Il y a une réponse adéquate aux événements ressources Web. Comment JavaScript rapide remplit une fonction particulière, il dépend de plusieurs techniques (ordinateur, lignes de communication) et sémantique (algorithme logique, domaine, ce qui signifie le problème) facteurs.

En fait, on peut dire que quelque chose a travaillé en parallèle, mais quelque chose tournera après quelque chose, mais le sens de cette spéciale n'est pas. Il est important que la fonction JavaScript – il est l'occasion de créer une réponse adéquate aux actions du visiteur.

Cette nouvelle façon de penser dans la conception: le traitement distribué dans les profondeurs d'un seul navigateur!

La syntaxe des variables et fonctions

JavaScript-variables sont placées dans le «scénario» de l' étiquette, et dans le corps de la fonction. Les fonctions sont définies de la même manière. signification spéciale pour écrire dans la fonction il y a une autre fonction, mais il peut être nécessaire pour diverses raisons, et il est tout à fait raisonnable.

Description de la fonction commence généralement par la «fonction» de motclé, suivi de son nom, la liste des arguments entre parenthèses, séparés par des virgules, et le corps de la fonction accolades.

Dans cet exemple, deux fonctions sont décrites qui fournissent AJAX-échange entre la page et le serveur. En partie scXHR décrit cidessus, car disponible en InitXML, et dans WaitReplySC.

Le nom de la fonction et le paramètre « fonction »

Il a été présenté la version asynchrone lorsque la fonction fonction JavaScript est appelée après la réponse du serveur. Ainsi, la réception d' une réponse du serveur, WaitReplySC accède à la balise de page, remplit les informations reçues et provoque d' autres fonctions, ce qui pourrait bien lancer la requête suivante au serveur.

Ici , il est également important de noter que WaitReplySC – une fonction. scXHR.onreadystatechange = WaitReplySC она передается как параметр. Mais dans la ligne scXHR.onreadystatechange = WaitReplySC il est passé en tant que paramètre. Cette fonction de transfert de règle générale à d'autres fonctions en tant que paramètres. entre crochets et leur a donné son paramètre (s) – la fonction sera exécutée immédiatement. Rapporté par nom seulement, si bien que ce. fonction d'appel fera celui qui a obtenu son nom.

La fonctionnalité mise en œuvre via AJAX, vous permet d'appeler une fonction JavaScript à travers les données reçues du serveur. En fait, l' envoi d' une requête au serveur, l' une ou l'autre fonction peut « savoir » pas du tout ce qui fonctionne , elle tourne, et avec quelle information.

fonction Out et son résultat

Le corps de la fonction, vous pouvez écrire tous les opérateurs de langue, qui, en fait, car il est destiné. caractéristiques à l' intérieur sont des variables déclarées à l' intérieur et à l' extérieur, mais pas ceux qui sont décrits dans d' autres fonctions.

Si vous voulez que la fonction renvoie un résultat, vous pouvez utiliser l'instruction return JavaScript: retour. Le corps de la fonction peut être un nombre suffisant de déclarations de retour. Il ne faut pas que tous les renverra le résultat du même type.

En règle générale, les développeurs sont vénérés cette occasion et, en fonction de la situation, décident de se retirer de la fonction le plus tôt possible.

Il ne faut pas courir dans l'ensemble algorithme de fonctions, lorsque vous pouvez sortir plus tôt.

arguments de la fonction

Les arguments sont passés à la liste des fonctions, séparées par des virgules, sont entre parenthèses, et sont juste après son nom. Les arguments utilisés les noms de variables, mais vous pouvez transmettre des valeurs directement. Pour passer une fonction JavaScript dans une fonction, il vous suffit de spécifier son nom sans parenthèses.

Dans la fonction est disponible arguments variables, qui a une propriété de longueur. Vous pouvez vous référer à toute fonction d'arguments par des arguments [0], arguments [1], … aux derniers arguments [arguments.length-1].

Modification de la fonction de l'argument est vraiment à l' intérieur de la fonction , mais non à l' extérieur. Afin de changer quelque chose en dehors de la fonction, l'opérateur doit utiliser JavaScript retour, à travers lequel passe la valeur requise à l'extérieur.

Une fois la fonction terminée, tout ce qui a été associé à sa mise en œuvre, seront détruits. Lors de l'exécution de la fonction peut modifier les variables externes, sauf celles qui sont décrites dans d' autres fonctions, y compris celles de l'intérieur.

Nous avons des arguments de propriété callee, qui est destiné à appeler une fonction qui est effectuée à un moment donné. Si la cause ellemême, la version JavaScript de la fonction dans la fonction mettra en œuvre récursivité.

Utilisation des fonctions

La principale préoccupation des fonctions – pour servir le navigateur d'événements. Pour ce faire , presque chaque balise a la possibilité de spécifier un nom d'événement et la fonction de sa fabrication. Vous pouvez spécifier plusieurs événements, mais chaque événement est indiqué qu'une seule fonction.

Une fonction peut gérer plusieurs éléments de la page et quelques événements. Grâce à «cette» option, vous pouvez transférer la fonction d'information où il a été appelé.

L'utilisation classique de JS-fonctions – les gestionnaires d'événements sur les éléments. Dans cet exemple scfWecomeGo () fonction ou scfWelcomeCancel () est appelée sous la forme d' entrée / sortie du visiteur, et lors de la sélection du mode de fonctionnement scfMenuItemClick (ce).

Dans ce dernier cas, le paramètre passé à «ce», ce qui vous permet d'apprendre miraculeusement de ce qui est la diva a été appelé. En fait, JavaScript est si qualitativement implanté dans les DOM, et il est si pratique vous permet de naviguer ses éléments, de recueillir les informations nécessaires que la dynamique des pages peuvent être tout simplement imprévisible.

La fonction ne doit pas retourner une chaîne, un nombre ou une autre fonction. Il peut renvoyer un plein élément HTML, et qui est le nombre requis d'éléments, avec leurs gestionnaires, leurs événements.

En plaçant un élément sur la page, le développeur crée une nouvelle fonctionnalité qui est bon en termes de résolution du problème et répondre aux intérêts des visiteurs, mais assez difficile en termes de mise en œuvre.

Depuis le développement d'un tel pleinement fonctionnel, facile de se perdre dans le code natif, dans les appels de fonction, dans les moments où formés ou que le contenu d'un ou l' autre de la page. Avant de prendre une telle orientation du développement, ne pas entraver un bien tout peser.

Sur la diffusion de la pensée

Le développeur doit penser au niveau de tous les éléments de la page, à tous les événements, et une présentation claire de la façon dont tout se passe en réalité. Il est difficile, mais le travail en vaut la peine.

En JavaScript, la fonction peut être retardée jusqu'à ce qu'un événement, et ces caractéristiques peuvent être nombreuses, et les événements ont tendance à se propager et entrer dans la « sphère de visibilité » des différents processeurs.

Dans cet exemple, quelque part avant que la fonction a été appelée, qui a lancé un menu de navigation de fichier de l' élément. On suppose la pagination, qui est dans la fenêtre seulement sept fichiers, qui peuvent être enlevés et traités. Peut être déplacé dans un fichier en cliquant sur la ligne, et les touches fléchées et blocs de sept lignes.

Dans chaque cas a sa propre fonction. En d' autres termes, dans cet exemple simple, vous devez écrire quelques dizaines de fonctionnalités qui réagiront à divers événements, et certaines de ces fonctions gérerez une variété d'options et de situations que les événements ne font pas partie.

Par exemple, lors du retrait de la ligne de fond doit être déplacé vers le haut. Cela nécessitera soit faire une nouvelle sélection courante et clairement une ressource, ou à compter les lignes, utilisez une fonction javascript sur le tableau et pour atteindre l'objectif élégant.

Les arguments et les résultats des fonctions

JavaScript permet de mettre le code à l'état « complet ». Normalement, lorsque l'argument de la fonction est la fonction. option permise, la fonction retourne une fonction. JavaScript prend assez calmement.

Ceci est un bon mécanisme, mais assez compliqué en ce qui concerne la mise en œuvre. fournir sémantiquement techniquement admissible transmission logique « fonctionnelle » seulement par un développeur qualifié.

Lorsqu'une fonction JavaScript dans une fonction – tout droit, mais quand la fonction génère une fonction, et qu'une autre, la logique est assez difficile à suivre. En fait, la question n'est pas d'appliquer les compétences, la question est d'obtenir un résultat correct et sûr.

soins de développeur est simple et claire. Il y a un problème, vous avez besoin d' une solution, pas un bug comme «erreur JavaScript l'opération est peu sûr» , un écran vide ou d' arrêter tous les moteurs de navigateur.

Si l'argument est une fonction, le développeur de passer une variable avec des propriétés spéciales, ce n'est pas un numéro, pas une chaîne, pas un objet. Mais l'utilisation d'un tel argument peut conduire au fait que changer les variables externes et est le résultat de l'exécution de la fonction. En fonction des changements qui seront transférés adéquat.

Exécution de code généré

Mettre en œuvre le code d'exécution généré au cours du travail autre code, il est possible au moyen de «eval». Il est pas considéré comme une excellente solution, mais souvent ne peut pas compliquer le code avec des fonctions inutiles et de limiter la formation de la ligne triviale de code JavaScript et exécuter simplement.

Dans cet exemple, l'insert est formé en point div opérable quelques informations. Diva et le contenu de l' information pour un nombre différent de positions différentes, parce qu'une telle décision dans cette situation ne prévoit pas une situation garantie «erreur javascript l'opération est peu sûr» , mais fermement donner l'effet désiré.

« Fonction dans la fonction » changement de paradigme Nuance JavaScript

Si vous pouvez faire sans fioritures, il est préférable de l' utiliser. Toutes ces options sont bonnes. Bien sûr, dans de nombreux cas, il est la seule solution.

Un exemple classique de récursion: le factoriel. Il est assez difficile d'écrire un algorithme qui boucle, mais il est très simple, vous pouvez pousser les valeurs d'enveloppe. Factoriel croît trop vite.

Cependant, récursivité, et la fonction appelle une autre fonction, ce qui peut rendre le rappel informé – des choses normales.

Par exemple, une table régulière. L'autre table peut être une table. Nesting ne peut pas être limité. Ecrire pour chaque table son propre ensemble de caractéristiques – trop de luxe.

De tels exemples sont nombreux, et tout cela sera un problème réel et urgent, non pas à cause de la programmation. Voilà pourquoi le problème réside dans le fait que sans fioritures ne mettent pas en place un système de fonctions, plus précisément, la mise au point et l'exploitation ultérieure fiable devient soin JavaScript et développeur.