Transcription
1. Introduction aux variables: Tu sais, hein ? J' ai envie de te voir ici. Je suppose que vous voulez en savoir plus sur les variables ? Eh bien, l'utilisation et le stockage de la fille. C' est l'épine dorsale de l'écriture du code. Et si Joe script ne pouvait pas faire, il serait assez utilisé. Ce langage, si chanceux pour nous, nous pouvons le faire. Et il le fait très bien. Je suis excité à propos de la section. Tout va être à propos de variables. Et parfois, vous voulez que vos variables changent. Parfois, vous voulez un état explicitement que vous voulez qu'une variable ne change jamais. Et vous nous avez vraiment vu utiliser des variables ? J' ai utilisé le mot tardif souvent, donc j'espère que certains de ses assez familiers. Voir, M.
2. Quelles sont les variables ?: Allons dans les variables. À la fin de la section, vous devriez avoir une compréhension très solide de tout ce qui est capable. Les variables sont un peu comme des conteneurs dans le script Java et en utilisant des variables pour stocker. fille est la base de JavaScript, Rilya et c'est fait en trois parties différentes. Mais nous allons entrer dans ces conférences et plus tard. Pour l'instant. Je veux juste que vous compreniez que Variable est juste un conteneur pour stocker des valeurs. C' est ça. Regardons Wally Wally Smart. Tu te souviens de lui ? On connaît déjà des informations sur lui. Son nom est intelligent, il n'a que 34 fonds sur son compte. Il n'est pas connecté, et il a quelques favoris. Comment pourrions-nous les stocker dans des variables ? Comment cela fonctionne-t-il ? me dit vraiment que prendre sa fille et manipuler plus tard sa fille est l' épine dorsale de la programmation. Toutes les langues utilisent des variables dans des variables, vous
permettent de stocker des choses et de les utiliser plus tard. C' est tout ce que la variable est. Alors prenons notre ami collègue. Ce sont des valeurs, mais comment on l'a volé ? Ce qu'il a l'air, chacun. C' est un conteneur créé, qui est juste une variable. Et donnons ce nom parce qu'on va stocker le nom de Wally Smarts. C' est presque comme si tu prenais un contenant et que tu étiquetais son contenant. C' est l'étiquette de son nom et mettons Wally Smart dans leur conteneur. C' est ça. Cela assigné, Allons vers le bas la liste suivante. Et City pour ? Eh bien, pas de problème. Nous avons un stock illimité de conteneurs. Appelons ça un solde, parce que c'est le solde des fonds dans sa coupe A. On peut l'appeler tout ce qu'on veut, c'est stocker ce 34 dans le conteneur et on continue à
travailler sur la liste. Prenons un autre conteneur pour savoir s'il est connecté ou non. C' est l'étiquette qui l'aimait, et c'est le magasin dans ce conteneur. J' espère que vous voyez un modèle ici. On fait la même chose maintenant pour les favoris. Nous avons volé les favoris dans un autre conteneur. Le point important sur lequel je suis sûr que vous avez déjà pris en compte est que toutes ces
variables ont été créées de la même manière que nous avons obtenu un conteneur, nous l'avons étiqueté, et nous mettons la valeur et vous pouvez également voir que les variables peuvent contenir différentes types de fille. Pensez à un conteneur dans votre garde-manger. Vous pouvez mettre différents types d'aliments dans ces contenants. La même chose avec le script Java. On ne parle pas de nourriture. Nous parlons types de valeur dans notre exemple connecté en tant que lingots balance Anamika. Son nom est la force et les favoris. On vient de dire que c'est complexe. C' est en fait un tableau. Et dans notre programme en Corée et n'importe quelle application, vous audacieux, vous allez probablement avoir des centaines et des milliers ou des variables que vous créez dans votre manteau. C' est pourquoi cela vaut la peine d'avoir une section entière sur eux. Donc vous les comprenez profondément. Une autre chose qui est intéressante. Il a des variables d'amour, ont des noms uniques. Ce serait très déroutant si l'équilibre devenait en quelque sorte nom. Ça n'a pas de sens. Et puis vous commencez à remplacer les variables, et tout cela devient très méchant. Rappelez-vous, nous créons des variables. Nous avons ensuite mis des valeurs en lui et affaiblir volé, et nous devrions nous assurer que les variables ont des noms distincts. Passons à autre chose
3. Création de variables - Décoller, initialiser et attribuer: Regardons les variables et comment nous les créons un peu plus en détail. Rappelez-vous, dans la conférence précédente a dit que l'utilisation de variables pour stocker les filles fait et trois étapes
distinctes bien, nous allons discuter les étapes rapidement. Le premier c'est, vous devez prendre votre variable. Et tout cela signifie que le véhicule est immatriculé dans sa portée correspondante et dans la portée d'une variable simplement là où la variable peut être utilisée. N' insistez pas encore sur la portée. On parlera de la portée plus en détail plus tard. L' étape suivante est l'initialisation. Vous devez initialiser cette variable, et cela se produit généralement en même temps, les variables déclarées. Et tout cela signifie que la variable se voit attribuer une mémoire. Il s'agit d'un espace de signe par le moteur JavaScript, et lorsque vous initialisez cette variable, il prend une valeur indéfinie. Souviens-toi que sous trouver. C' est un haut de fille primitif. Il prend cette valeur et vous dire signe de valeur à elle. Et oui, est un exemple pratique d'une variable indéfinie. Disons que nous inventons juste une variable appelée animal, mais nous ne lui attribuons pas de valeur, ce qui signifie que nous n'avons pas de signe inégal avec la vidéo. On va juste aujourd'hui variable. C' est ce que nous venons de faire, et maintenant nous allons taper les animaux. Il n'est pas défini. Donc, nous avons dicté une variable en arrière-plan. Le Parsa a initié une variable. Il est affecté de l'espace mémoire cette variable, mais à ce stade, il est indéfini. Ce qui nous amène à la troisième étape, et c'est une signature de valeur à cette variable. Et tout ce que cela signifie, c'est que vous mettez littéralement une valeur dans leur contenu. Vous avez dit à Javascript que cette variable doit avoir cette valeur que nous avons déclarée initialisée est variable appelée animal. Dans ce cas, comment l'assignons-nous ? A très C'est facile. Ça dit « Notre animal », tu viens de lire. Tapez-le parce que, rappelez-vous, il a été initialisé. Il y a de l'espace mémoire. L' opossum sait qu'il s'agit d'une variable, mais nous allons lui attribuer une valeur hors. On parlera, et maintenant, si on s'éloigne de l'animal, on s'attend à voir de la ficelle, c'est
ce qu'on a. L' espoir fait des saints. Passons à autre chose
4. Qu'est-ce que les identifiants ?: vous avez vraiment vu beaucoup d'exemples de nous utilisant des variables. Mais avant de passer à autre chose, je veux juste que vous compreniez, identifiez-nous. Ne vous laissez pas intimider avec la terminologie. Tout et identifier est ce que c'est le nom ? C' est le nom que nous donnons une fonction variable ou une propriété, mais le chirurgien règle rapidement autour d'une donnée. Nous ne pouvons pas simplement nommer des variables. Tout ce que nous voulons avant de faire attention à la façon dont nous le structurons et à la syntaxe que nous utilisons. Par exemple, les identifiants doivent être composés de lettres et de chiffres. On ne peut pas utiliser de symboles et y penser. Regardez vos numéros de clavier. Maintenant. Tous ont une opération. Ce qui veut dire que vous avez les crochets pour neuf et zéro. Vous avez le signe de multiplication sur huit. Vous avez le signe pour sept la Palestine sur six. Nous ne pouvons donc utiliser aucun de ces symboles parce que lorsque le passé tombe sur ces symboles, il l'interprète d'une manière très structurée et ordonnée. Nous pouvons
cependant utiliser le signe du dollar ou le soulignement. Nous nommons une variable qui nous est ouverte. L' autre chose avec identifie est que nous ne pouvons pas commencer sont le nom de la variable pour le nombre. Alors, comment nomme-t-on toutes les variables, et quelle est la meilleure pratique ? Eh bien, la convention que j'aime et c'est probablement la plus populaire est ce qui est connu sous le nom de cas Kemel , sauf pour les noms de classe et CONST. Variables, bien que vous pouvez. La norme de l'industrie est que vous les structurez d'une manière différente. Ainsi, lorsque vous tomberez sur une variable encoder ce n'est que toutes les capitales, par
exemple, vous saurez immédiatement qu'il s'agit d'une variable constante. Par exemple, pi
constant est égal à 3.142 Vous ne vous attendez pas à ce que votre code le modifie. Et c'est pourquoi le considéré comme un feu serait toutes les majuscules sur une constante ce cas Capital P et un Capital I. Vous devez également être loin que les noms de variables sont sensibles à la casse. Cela signifie que si nous définissons une variable appelée ma variable, bien qu'un cas et nous rendons cela égal à un et nous faisons la même chose avec une autre variable. Mais nous utilisons le cas de chameau, et nous assignons que la valeur à ces deux variables distinctes. Ils ne sont pas égaux à la même chose, et enfin,
identifiants ne doivent pas être constitués de mots-clés réservés. Nous savons que nous avons utilisé des mots-clés de réserve tout le temps, Quand Javascript vous avez vu les journaux de données de la console d'invite d'alerte. Nous ne pouvons pas les utiliser pour définir des noms de variables parce que dans l'interpréteur ne va pas
savoir ce qui se passe. Les mots clés de réserve sont juste des mots dans le langage de script de travail qui ont intégré la fonctionnalité ils ont été pré-définis par le programme est hors script de travail pour nous, et voici quelques exemples à l'écran. Celles-ci ne sont pas exhaustives. Il y a des centaines de mots-clés réservés, donc n'utilisez pas les pour définir votre propre variable. Allons passer à autre chose.
5. VAR - La vieille façon to une variable: nous connaissons la théorie, mais voyons comment nous avons réellement mis en œuvre avant les années 2015. Vous deviez utiliser le var ki serait, et c'est pourquoi vous verrez beaucoup de code de voyage d'emplois avec le Vaki serait. Et tout ce que vous avez à faire, c'est que le nom de votre conteneur le nom de votre variable après le mot-clé Vaulx. Oui, on a quatre noms pour l'équilibre. Mais rappelez-vous, à ce stade, nous n'avons pas encore attribué de valeurs à ces variables, donc la valeur de chaque variable sera indéfinie. Et cela nous amène à nous souvenir de ce qu'était le bâton. C' était quand vous initialisez votre variable et cela signifie que le moteur JavaScript signe la variable en mémoire. C' est tout ce que cela signifie, mais vous n'avez rien fait d'autre dans votre code. Tu ne le fais plus. Tu viens toujours d'écrire pour le nom des parents suivis. Et rappelez-vous, quand il attribue cela à la mémoire, il va placer une valeur indéfinie à chacune de ces variables parce que nous n'avons pas encore attribué de valeur et cela nous amène à l'étape finale et la plus importante, et que attribue une valeur à une variable. Nous utilisons le signe égal comme opérateur d'affectation, et cela signifie simplement un signe. Qu' est-ce qui est intelligent pour le nom de la variable ? C' est ce que ça veut dire. Quelque chose que je veux te montrer avant de passer à autre chose, c'est la clé de l'automne ? Que ce que nous avons utilisé pour définir une variable. C' est la vieille école, mais je veux juste que tu comprennes où c'est. Ouvrez la console et mystifiez, en utilisant la vieille école loin. C' est un utilisateur de bar. Worley est intelligent ? C' est ce qui va se passer. On a su trouver ça. Utilisez-le dans la variable Volvo pour appeler l'utilisateur. On doit juste le taper sur l'ordinateur. Le Parsa le frère sait que c'est une variable qui sait que la valeur est alors qu'il est intelligent. Mais c'est ce qui est intéressant. Chaque variable que vous utilisez votre code a une portée globale locale. Et comme je l'ai dit, nous allons entrer dans la portée plus tard. Mais tout cela signifie que si c'est une portée globale, elle est visible absolument partout, et vous pouvez utiliser cette variable partout. Si elle est portée localement, cela signifie
que vous ne pouvez l'utiliser que dans des situations limitées avec la clé de coffre-fort, ce qui est ce que nous lui avons fait. Si nous ne le définissons pas avec dans une fonction, il aura automatiquement une portée globale. Et laisse-moi te montrer ça. C' est ce que l'école. Si nous avons parlé de l'objet de la fenêtre dans notre console et souvenez-vous, nous sommes passés sur l'objet de la fenêtre ruiné sur la bombe dans l'une des conférences précédentes. Si nous ouvrons cela, je m'attendrais à ce que nous soyons en mesure de trouver l'utilisateur. Et là, il est, est tout utilisateur que nous avons défini ce qui est intelligent. Ce que cela signifie, c'est qu'il est disponible dans le monde entier. Nous pouvons utiliser cela absolument n'importe quelle façon nous pouvons même l'utiliser dans une fonction et tous savent ce que c'est vous devriez. Mais utilisons-le et la fonction. Je vais vous montrer que nous avons accès à cette variable appelée user. Quoi qu'il en soit, Appelons simplement le goût de la fonction par manque d'un meilleur mot et son utilisateur du journal de la console. Comprenez ce que nous venons de faire ici. Nous avons utilisé la fonction utilisateur variable, mais cette portée de fonction, ce n'est jamais nous n'avons jamais défini utilisateur, donc nous allons l'obtenir de ce qui va l'obtenir de la portée globale, et tout ce que nous avons à faire est une affection cool et pour appeler une fonction. Vous indiquez simplement le nom de la fonction, qui est le goût et vous avez les parenthèses, et cela signifie simplement exécuter. Alors exécutons ça. Et là, vous allez console regarde l'utilisateur, qui dans ce cas est une sonde intelligente, fait des scènes. Mais passons à des moyens plus importants de déclarer des variables, et c'est avec le mot-clé tardif et constant.
6. LET - La nouvelle façon de déclarer une variable: Maintenant, entrons dans le mot-clé let. Vous m'avez vu écrire tard dans mon code et c'est la nouvelle façon de désintégrer les variables. Il a été introduit dans les années 2015 et nous avons des contraintes de portée, qui est en fait très bon, parce que ce qui vous permet de faire est qu'il vous permet de définir où votre variable a sens et où elle ne le fait pas. Et ne vous inquiétez pas de la portée e. Il vérifiera à ce sujet plus tard. Sachez simplement que les variables tardives ne peuvent pas être lues. Ça l'a fait. Laissez-moi vous donner un exemple. Si nous nommons à juste titre parce que complètement intelligent et plus bas notre code, nous allons laisser le nom égal pendant qu'il est stupide. Java script va nous donner une ère disant que le nom est vraiment été défini et c'est une bonne chose, non ? Nous ne voulons pas que nos conteneurs soient mélangés sous le même nom. Les conteneurs dans notre garde-manger ont des noms distincts pour des variables distinctes, et vous serez un codeur très heureux. Mais cela ne veut pas dire que vous ne pouvez jamais changer le nom Wally smart, car avec le mot-clé let, vous pouvez réaffecter des valeurs aux variables. Si nous n'avons pas inclus le mot laisser et nous avons juste dit nom parce qu'un stupide retard sur notre code qui serait parfaitement valide. Et je veux juste élaborer,
délibérément ignoré la portée. Et je ne veux pas entrer dans ce sujet pour le sujet des fans, donc nous allons y entrer plus tard.
7. CONST - La nouvelle façon de déclarer une variable constante: Et bien sûr, le cousin de fin est Constance, et c'est la façon la plus stricte de déclarer une variable dans mon conseil est d'utiliser constante
autant que possible car cela vous amène à organiser votre code d'une manière beaucoup plus structurée. Const. A été introduit en même temps. Il est tard, c'est plus strict et limité la portée qui l'a déclaré. Mais c'est là l'aspect important de celui-ci. C' est le lieu ne peut pas changer. Et comme je l'ai dit, vous êtes plus organisé comme vous le pouviez. Jetons un coup d'oeil à un exemple. Eh bien, disons que nous avons un nom d'un et que nous utilisons le mot-clé constant. Si j'essaie de mettre le nom de const égal à la télé, ça ne marchera pas. Ça va me jeter une ère. C' était la même chose que nous n'étions pas en mesure de directement les fesses avec la fin. Rappelez-vous, nous pourrions assigner une valeur à une variable, mais juste ne pas avoir la jambe. On a juste eu le nom. Eh bien, si nous essayons cela avec constante, nous obtenons une ère, qui est très, très génial et juste garder à l'esprit lorsque vous utilisez constante, vous devez initialiser la valeur que vous ne pouvez pas simplement taper nom constant, par exemple, vous devez attribuer une valeur en même temps que vous l'initialisez. J' espère que cela a du sens. Continuons rapidement avant de passer à autre chose. Je veux vous montrer que la différence est entre la balle et le coût en ce qui concerne les variables de
réaffectation et de compensation Redick. Tout d'abord, avec l'automne ce définir un très bien appelé A et Smith 13 avec vaw Nous avions tellement de flexibilité , que vous pourriez argumenter est bon. Mais le revers est qu'il a causé beaucoup de sacs. Et beaucoup de zones dans votre code à cause de tout vous permet de faire ce que vous voulez en ce moment . Si je parlais, nous nous attendons parce que nous avons déclaré que c'est l'équipe. Nous lui avons assigné l'équipe de valeur. Mais que se passe-t-il si je lis un signe pour un égal 15 ? Qu' est-ce qu'un Non. Eh bien, c'est là que nous commençons à mêler toutes nos variables parce que maintenant ce que le passé est
fait , c'est fini, écrit un à 15 et vous pouvez voir que oui, nous avons perdu notre équipe de valeur. C' est la seule implication de tous. L' autre implication est que nous ne faisons pas assez pour le lire, effacer. On peut juste réassigner en parlant. Aujourd'hui est égal à huit maintenant un égal huit, comme vous vous attendez maintenant nous avons perdu le 15 donc vous pouvez voir que nous pouvons faire des choses bizarres avec l'automne Go pour un égal. Ensuite, sur la ligne suivante, nous pouvons aller pour un égal deux Saiful et ainsi Et c'est là que Constant entre dans l'image. Constant résout ce problème. Cela nous rend plus organisés. Skoda nous aide à être plus structurés que de penser aux variables que nous avons créées. Essayons la même chose avec Constant. C' est définir l'appel et faisons cet appel une BMW. Je n'appelle pas, on devrait avoir BMW. Mais maintenant, nous avons utilisé le mot-clé constant. Donc, si je veux savoir, remplacer et les taureaux d'appel constants ne connaissent pas Toyota, ça me donne littéralement une identification inattendue. Et si j'essayais de réaffecter en surmontant l'appel et en le faisant de cette façon ? Ecoute, j'ai une époque très similaire. Je reçois une variable constante d'affectation d'orteil de type unquote. C' est la chose géniale à propos de constante. Continuons
8. CONST - Essayez de attraper: ce n'est pas une mauvaise connexion. C' est juste aider em plan et combien je profite de ce cours avant de passer de Constance. Je veux juste vous montrer un exemple de plus. Et oui, je veux utiliser ce qu'on appelle le bloc try and catch. Tout ce que c'est que le bloc try de code vous permet d'essayer une expression. Et si ça jette des époques, c'est avec une prise. Bloc entre et dans le code à trouver dans ce bloc sera exécuté. Permettez-moi de vous donner un exemple et en passant par cet exemple, j'espère que vous aurez un peu de sensation pour le mot-clé constant à cela. Définissez un nombre. Faisons le nombre égal T Tu sais ce que je n'ai pas fait ? Je ne suis pas resté avec la pratique de base, et c'est d'avoir des bouchons pour vos constantes. Donc fait un nombre égal équipe ce bloc d'essai final et encore une fois j'ai Crocker. C' est pourquoi nous voyons dans ces zones affichées en temps réel. Essayons les appels de numéros, tirons et souvenez-vous, avec Constance, nous ne sommes pas en mesure de lire une variable de signe que nous avons essayé de faire ici. Donc, je m'attends à ce que le bloc catch soit exécuté et une chose avec le bloc catch est que l'
ère des femmes est jetée à travers le try me qui passe sur une variable à l'intérieur de l'ère en elle. C' est cool. Il ère et son époque de look console. Eh bien, ça ne nous donne pas d'erreurs. Et c'est un autre Écoutez, ils ne sont pas involontairement avec moi pour donner des variables sont sensibles à la casse, Donc le nombre constant est différent de ce nombre ici. Juste que je dois aller casquettes et je vais m'attendre à ce que non le vôtre. C' est exactement ce que nous avons assigné l'ère de type à Constant. Nous ne permettons pas de le faire. J' espère que tu as appris quelque chose.
9. Variables - recap: Ok, nous allons juste avoir un résumé rapide sur les variables Var tard et const. Eh bien, la première chose dont vous devez vous souvenir est que quand vous écrivez const. Alvar tardif, il dit au moteur JavaScript de le stocker en mémoire. Et juste pour vous rappeler lorsque vous utilisez le FARC, vous seriez en fait déclarer une variable à la portée globale si vous ne l'avez pas fait dans une fonction entrera dans cela un peu plus tard. Mais n'utilisez pas bien, plutôt utilisé peu de const et vous utilisez lit lorsque vous voulez changer la valeur et vous utilisez const lorsque vous voulez que la valeur ne change jamais.
10. Portée: Nous avons beaucoup affaire à des variables, et à ce stade, vous devriez commencer à vous sentir beaucoup plus à l'aise avec ce qu'elles sont en réalité là, juste un conteneur qui stocke la valeur. C' est aussi simple, et vous allez rencontrer ce qui est connu un problème de portée. J' ai sauté dessus dans la conférence précédente, affirmant qu'il s'agit d'un sujet plus de fonds. Mais tu dois savoir à propos de Scopes, et c'est pour ça que j'ai pensé, Laisse-moi poser ça. Qu' est-ce que Skype ? Toute la portée est l'endroit où vous pouvez utiliser une variable. Et qu'est-ce que je veux dire par là ? Eh bien, il y
a quelques minutes, je viens d'écrire du code. Je veux illustrer ce qu'est la portée et pourquoi. Il est important pour nous de comprendre comment cela fonctionne. Disons que nous avons un bloc de code et que vous devez trouver une variable en haut appelée mon nom. Pourquoi la portée est importante, c'est parce que vous et moi avons besoin de savoir où nous pouvons utiliser cette variable. Nous devons trouver la variable globalement. On peut l'utiliser. Par exemple, si nous avions un bloc if et que nous avons enregistré mon nom par console, cette variable serait-elle valide ? Serait-ce possible ? Et si on avait une boucle quatre blocs par boucle ? Pourrions-nous consoler, enregistrer mon nom Day ? L' interprète comprendrait-il quel est mon nom ? Eh bien, soyons plus compliqués. Et si on avait une fonction dans cette affaire ? Nous allons juste l'appeler portée variable et nous exécutons cette fonction, Sera-t-il capable de consigner mon nom cette variable ? Et bien que ces exemples de journaux de consul tiennent juste à l'esprit, le code pourrait être n'importe quoi. Cela pourrait être n'importe quoi où vous utilisez à nouveau cette variable. Et c'est pourquoi la portée est importante. Vous devez savoir où vous pouvez l'utiliser, où vous pouvez y accéder. Ici, nous avons défini une variable globale, donc vous attendez juste intuitivement, d'un global favorable que nous devrions enterrer. Utilisez-le absolument. De toute façon. Et tu serais cool, non ? Mais c'est un simple est un get. Que diriez-vous si vous allez définir des variables dans votre fonction, pouvez-vous les utiliser en dehors de la fonction ? Et si vous le définissez dans un bloc de bouclés ? Accroyez-le. Tu peux l'utiliser en dehors de ça ? Et c'est là que la portée entre dans l'image
11. Portée locale vs globale, et la fonction et la portée de la bloc: Prenons un pas en arrière. Le script Java a deux types d'arrêts. Skype local et global bloqué n'importe quelle variable qui ne peut être utilisée que dans une partie spécifique de votre code, sa portée locale, puis intuitivement a du sens car vous ne pouvez utiliser cette variable que dans un morceau de code local. Tu ne peux pas l'utiliser de toute façon. Doit être à un endroit, et j'aimerais que ce soit aussi simple que ça. Mais une variable de portée locale existe en deux types. Vous avez une portée de fonction et une portée de bloc. Permettez-moi de vous montrer rapidement un exemple avant de passer à cette conférence. Ce que je veux dire quand je dis que cette variable a une portée locale et que nous avons deux types différents de portée de fonction Skype locale dans la portée du bloc. Jetons un coup d'oeil à un exemple. La première chose que nous devrions faire est de créer une fonction, et appelons-la le goût pour l'absence d'un meilleur mot, et dans cette fonction est de trouver une voiture
froide variable que nous voulons faire. Est-ce que Consul long cette fable, pas seulement prendre un pas en arrière et penser à ce que c'est que nous avons juste créé une fonction appelée Taste dans cette fonction dans la portée locale. Dans ce bloc, nous devons trouver un appel à froid variable. Que se passe-t-il lorsque nous exécutons cette fonction bien, pour exécuter une fonction qui a reçu un appel, son nom entre parenthèses et l'impatient exécute, et vous pouvez voir que BMW est consulter l'écran comme nous l'aurions attendu. Mais que se passe-t-il si nous voulions accéder à cette variable de voiture en dehors de la fonction ? Eh bien, c'est
ce qu'est la définition de la portée. Ce n'est pas possible. Vous pouvez voir que ce n'est pas possible. L' appel n'est pas défini. Nous obtenons l'ère et c'est à cause de la portée des fonctions. Bon, donc on voit que ça ne marche pas. Et le bloc ? Je veux dire ce que je veux dire par là ? Rappelez-vous ce qu'un bloc est bloque juste le bouclé. Accrochez-le. C' est tout ce qu'un bloc de code est donc vous pouvez réellement voir un bloc est un sous-ensemble ou une fonction parce que la fonction nécessite des accolades. Sauf si vous utilisez le nouvel Aero Syntex, qui entrera plus tard, laissez-moi vous donner un exemple de théorie à portée bloquée. Débarrassons-nous de ça. Allons juste avoir des accolades. C' est un bloc, et maintenant il est défini variable, animal
froid et encore une fois Nous voulons juste consoler cela à l'écran. Pas de problèmes là-bas, mais que se passe-t-il quand nous voulons exister ? Cet animal en dehors de l'animal de bloc n'est pas défini, et c'est ce qu'est la portée. J' espère que ça commence à faire des scènes. Ce qui est intéressant, cependant, est avant le mot clé let que nous avions seulement évolué et regardez ce qui se passe quand nous écrivons pour Alors maintenant ce que nous avons fait est que nous avons été placés en retard avec pour ce qui se passera à votre avis ? Je m'attendrais à ce que l'animal soit aussi des blocs cuisinier, mais ce n'est pas le cas. Regardez que Warthog est disponible à l'extérieur des accolades quand il s'agit de balle. Et c'est pourquoi, avant la nouvelle année, six dans le texte sont arrivés, les gens ont référé au script Java comme un langage à portée de fonction. Mais ce n'est pas le cas en vous, parce que maintenant nous avons un peu de const. Ce qui veut dire que c'est des blocs. Je suis sûr, donc on est bien en arrière. Nous avons fait localement portée. Passons maintenant à ding ding ding ding globalement portée, une variable déclarée en dehors d'une fonction ou d'un bloc et tout ce que je veux dire par un bloc, ses accolades, ses
têtes, têtes, portée
globale et quelque chose qui mérite d'être souligné est que c'est uniquement le retrait réel d'un script dans les navigateurs Web aux variables globales claires dans Node. Tu dois faire les choses un peu différemment. Mais ce cours n'est pas un cours de nœud qui voulait juste le mettre là et encore. Assez parler. Permettez-moi de vous montrer un exemple rapide d'une variable globale. Nous avons vu des exemples dans le monde entier. Variables étendues, preuve qui est une bouchée globalement. Variables Skyped. Doublement étoffé Gables, des fables. Nous en avons vu des exemples. Vous devez vous en montrer un autre rapidement pour ramener le point à la maison. Vous ne pouvez pas être trop fort sur cette constante hors bande, donc en fait, vous savez ce que je vais faire. Moi, je viens de commencer. Quicker Cook s'en va. C' est une grande variable Eh bien, la pizza de valeur. Et maintenant, avant de continuer, gardez à l'esprit. C' est un très bien mondial. Pourquoi est-ce une variable globale ? Il n'est pas défini dans une fonction, et il n'est pas défini dans les accolades. Ce n'est pas à trouver dans le bloc. La valeur par défaut est que cela est globalement accessible depuis n'importe où dans votre manteau, et pour le prouver. C' est créé fonction appelée show food, et tout cela fait est un favori des journaux de console. Trois. Prenant un pas en arrière si je viens Consul connecté nourriture préférée, je m'attendrais à voir Peter si longtemps nourriture préférée. Je m'attends à voir Peter, et c'est ce que nous voyons sur la raison pour laquelle nous voyons cela, Peter, c'est que tout ce que nous faisons c'est que nous référençons le directeur de variable globale. Donc, en effet, il n'y a pas besoin pour nous d'avoir eu une fonction qui a fonctionné cette fonction. Nous modifions pour exécuter une fonction. J' ai Teoh appeler son nom, puis le fermer entre parenthèses un nom plus frais, puis appuyez sur parenthèses exécuté la fonction, et vous pouvez voir la fonction s'exécute. Nous n'avons pas défini de variable dans la fonction dans cette portée, mais pourtant la fonction sait toujours ce qu'est la nourriture préférée. C' est de la pizza, et c'est le pouvoir de nettoyer quelque chose de global. Et juste avant de passer à autre chose, je ne veux pas que vous pensiez que vous majestueusement ou vos variables globalement maintenant parce que le seul problème et c'est un gros problème avec la déclaration de variables globalement, son nom caches. Lorsque vous commencez à trouver des choses globalement, ce que vous trouverez est que vous pouvez commencer à écrire des variables même qui ont déjà été pré-définies dans le parcours. N' y allez pas si vous pouvez éviter une variable globale. Plutôt, faites ça. Quel grand nombre de codeurs avez-vous pour entrer une variable globale est leur objet global créatif . Donc, il y a , par
exemple, ils vont laisser un objet global égal. Et puis ce qu'ils font est là des propriétés de toucher à cet objet un point favori, voir Top égal pizza. Et puis, si vous voulez réellement définir plus tard dans votre code, vous pouvez simplement accepter votre objet global, que vous savez toujours. R. Avec la notation point, vous pouvez accéder à toutes vos propriétés. C' est ce que tu fais. Vous pouvez y accéder. Vous conservez simplement la console Slob. Aimez ça si vous voyez le résultat, et il est en fait sortir cette pizza, pas la première pizza. Ne vous inquiétez pas. Si vous ne comprenez pas tout à fait ça. Eh bien, vous savez que c'est un code plus compliqué, que nous pourrions entrer en retard dans le cours. Pour l'instant, je veux que vous compreniez les étendues globales, les étendues
locales, les variables, Let's et Constance, et juste pour finir. Rappelez-vous lorsque vous traitez avec Fars, nous avons vu qu'il était fonction portée, ce qui
signifie que même si vous mettez évolue et accolades. Vous pouvez commencer à accéder à cette variable de toute façon dans votre manteau. Et pour cette raison, le script
Java était connu comme un langage de portée de fonction. Mais plus, parce qu'avec const latent, nous avons maintenant la portée des blocs et cela résume pour la portée.
12. Portée - VAR vs LET vs Blocs imbriqués: avant de passer à la prochaine conférence. Je veux juste comparer l'automne et laisser mot clé à nouveau rapidement. Je veux ramener ce point à la maison et il vous aidera avec la promesse de codage. Définissons un âge bien à. Et rappelez-vous quand je fais ça avec le mot Vaki, je crée le Skype global vous. Maintenant, c'est ce que je veux faire. Si la tarière à eau a plus d'un an, je veux consoler le journal à l'écran, des années humaines
équivalentes à cette eau. Ce que je veux dire, Eh bien, l'eau vieille vie depuis environ 18 ans. Et si on dit juste des vies humaines 100 ans, je sais que c'est trop long, mais disons juste que les vies humaines moyennes 100 ans. Ce que ça veut dire, c'est que pour tout le monde, l'eau Gye. C' est l'équivalent de 4,72 années humaines, et je veux juste consoler ça à l'écran. Donc, disons que l'âge est supérieur à un, parce que nous le sommes. Vous voulez le faire s'ils marchent vers l'âge d'un an et maintenant quand une variable créative, qui est l'équivalent de l'âge humain, ce que nous avons dit est juste l'âge de la conversation de guerre multiplié par 100. Si nous prenons cela est la durée de vie moyenne d'un humain divisé par 18, qui est la
durée de vie moyenne d'un discours de guerre. Et puis on veut se consoler, regarder à l'écran, et je vais utiliser des modèles de véhicules. Un warthog Teoh est des années en termes humains, et c'est ce qui est sympa dans le poker. Vous pouvez voir que la sortie est l'immunité affichée à droite et en bleu. Et c'est ce que je veux maintenant comparer les visites Vaal. Rappelle-toi, nous avons dit que Falls seulement les fonctions ont. Donc si j'essaie d'accéder à l'âge humain, que pensez-vous qu'il se passera ici ? L' âge humain ? Eh bien, ce n'est pas une fonction, n'est-ce pas juste un bloc. Ce n'est pas une fonction. Donc je m'attendrais à ce que l'âge humain soit visible partout avec l'âge humain du volcan. Et c'est que nous pouvons voir les résultats opposés à l'écran. Et si je change cet automne à un puits éclairé laters bloc portée. Je m'attends donc à ce que l'âge humain ne soit pas défini. Nous ne pouvons pas l'utiliser en dehors de ce Locke. Mais tu le savais vraiment, n'est-ce pas ? Alors, on va le tremper d'un cran. Essayons de créer. Nièce a bloqué et nommé. Voyons ce qui se passe. Supprimons ceci. Créons une fonction appelée variable Skype par manque d'un meilleur mot. Tu peux l'appeler tout ce que tu veux et tout de suite sur le lit. Définissons une variable appelée X et faisons cela un nombre. Maintenant, ce que je veux faire est de créer une nièce a bloqué. Nous ferons une simple déclaration if qui s'exécutera parce que nous ne faisons que passer la
vérité des lingots . Et si c'est vrai, je veux créer une variable. Mais obtenons-nous, je veux que le nom de la variable soit le même X et il a dit que cela doit être drôle String . Donc, vous pouvez vraiment voir que nous avons deux factures très maintenant qui ne devraient pas être techniquement beaucoup s'ils étaient dans la même portée que les numéros, la force. Mais voyons ce qui se passe. Eh bien, je veux le faire maintenant. Est-ce que le Consul est journal ? Oui, dans ce bloc ? Non, je suis allé quitter le bloc et je veux à nouveau un journal de console X. Et la dernière chose que je veux faire est de nouveau le journal de la console X. Mais laissez-moi m'arrêter plus vite pour le moment parce que je veux que vous pensiez à la
console de résultat , Log X, et il a ma question à vous, et je ne vous donnerai que la réponse. Dans quelques secondes, je veux que vous mettiez la vidéo en pause. Pensez que nous avons trois journaux de console sur l'écran. Quel sera le résultat de chacun de ces journaux ? Pensez aux étendues. Pensez aux étendues de bloc. Pensez aux étendues de fonction. Suspendre la vidéo. Maintenant, donne-le un coup d'
envoi, et je répondrai à la question. Tu lui as donné un coup d'envoi. J' espère que tu t'es bien amusé. J' espère que tu le rejoindras. Et ne soyez pas intimidés par tout ça. Je veux dire, c'est drôle, tu sais. Et si vous ne connaissez pas les réponses, c'est très bien. C' est pour ça qu'on fait le cours ensemble. Ok, donc avant que je commence un marcheur, passons à travers ça. On a une fonction. Rappelez-vous que la variable let est la jupe de fonction. Cela signifie que toute variable définie dans cette fonction n'est pas accessible en dehors de cette fonction. C' est la première chose que je veux que tu penses. Donc, cette console, amour Peaks est là dans la fonction, notre fonction sur la fonction. Donc quand le passé arrivera et qu'il regardera, X va trouver quelque chose. Non, ce n'est pas le cas. Qui est-ce ? X est introuvable dans la portée globale. Donc, je m'attendrais à ce que ce dernier journal de console s'affiche et trouve. Et la première console ? Rappelez-vous, nous avons dit que la variable tardive est le bloc Scott. Cela signifie que vous pouvez traiter cela si bloc est sa propre section de code et seule cette section peut accéder à cette variable. Donc ce que je veux dire par ça Eh bien, nous avons défini des pics dans cette portée. Et puis nous avons bloqué X, donc je m'attendais à ce que le X veuille. Maintenant, il va à la console du milieu. On a sauté de ça. Si bloc donc qui bloque loin dans ce que nous dans le bloc de fonction à nouveau. Et cela signifie que nous devons trouver existant. Et sommes-nous une cassette de réservation sur console ? Je m'attendrais au résultat. Voyons si ça marche. Donne-moi activer Coca. Donnez-lui un moment afin que vous puissiez recevoir des travailleurs qui disent déjà que X n'est pas de savoir ici, qui est ce que nous attendions. La raison pour laquelle on ne voit rien exécuté. Voici, nous n'avons pas exécuté la fonction et rappelons d'exécuter une fonction que nous devons appeler le nom et enfermé entre parenthèses gros, et il nous a littéralement donné ce que nous attendrions. L' espoir. Ça commence à se sentir intuitif. Continuons.
13. Bonus : utiliser DevTools pour déterminer la portée: c' est peut-être un peu avancé, mais je crois que vous demandez. Fais-le. C' est intéressant et les scènes que nous allons utiliser un outil de débogage dans chrome Teoh, vérifier sans variables ou local ou globalement portée. C' est cool ? Donc, nous allons rapidement créer quelque chose que nous pouvons tester nos variables et, eh bien, commençons avec un modèle standard de documents taupes HD et commençons le redressement sont JavaScript. Rappelez-vous, le script
Java doit être intuitif dans les prises de script. Et maintenant, définissons une variable appelée Page. Faisons en sorte que trois. Et nous savons que c'est une force et nous savons qu'il s'agit d'un nombre, et nous nous attendons à ce qu'il s'agisse d'une variable globale. Donc, disons un nombre capable de niveau. Maintenant, nous allons créer une fonction, et il est juste l'appeler Skype par manque d'un meilleur mot. Et créons une autre variable. Mais faisons ça une ficelle et disons qu'elle est jeune et prenons du recul. Quelle ampleur pensez-vous que cela aurait ? L' espoir ? Tu as dit la table cool locale avec le temps étrange et je vais devenir plus compliqué. Créons bloc et créons encore une autre variable tirée âge cette fois. Ça s'appelle ça vieux et isolé. Qu' est-ce que c'est si disquette, Quelle portée ce serait ? Oui, ce serait une portée locale. Ce sera un bloc local Skype, pour être spécifique. Cela devrait être une variable d'école de bloc locale avec une chaîne de type. Et pour le tester, nous pouvons consoler l'âge du journal ici. En dehors de cette déclaration if en dehors de ce bloc,
nous pouvons consoles log age et en dehors de tout ce que nous pouvons console, réserver l'âge et se rappeler d'exécuter une fonction que nous devons appeler son nom, que nous avons appelé scope avec parenthèses. Maintenant, vous pourriez être assis là à vous demander, Comment savons-nous avec nos variables sont localement ou globalement étendues ? Et si c'est même script local, comment pouvons-nous savoir avec sa fonction parlé blocs bien, Une façon est de juste la théorie habituelle. Asseyez-vous et comprenez Autres façons d'utiliser Google Dave Tools. Mais avant d'entrer dans Dave Tools, je veux juste que vous et moi pensiez à chacun individuellement, le premier âge à l'écran auquel je m'attendrais à être mondial. Nous avons défini cet âge en dehors de tout. Ensuite, nous arrivons à la fonction. Donc, quand nous définissons nouvel âge est égal jeune. Je m'attendrais à ce que cela ne soit disponible qu'en fonction et que lorsque nous nichons, un autre bloc dans ce pays, cet âge est égal à vieux. Je m'attendrais à ce que d'être seulement un événement local dans ce bloc fait des scènes en quelque sorte . Alors, comment pouvons-nous voir cela dans les outils de profondeur ? Eh bien, il y a un autre mot clé dans les emplois pour le Net, c'est D bag. Lorsque vous mettez cela dans votre code et que l'interpréteur le croise à interrompt littéralement l' exécution de dollars, et il définit les variables pour vous. Voyons voir le suivant. Alors, où voulons-nous les mettre ? Eh bien, disons au premier âge, au niveau mondial. On veut que le D s'arrête. Nous voulons voir ce que leurs âges. Ensuite, nous entrons dans la fonction. Nous définissons un jingles jeunes qui voient à ce stade quelle portée cela vieillit. Et quand nous entrons dans le second look imbriqué, faisons la même chose. Tout ce que nous devons faire maintenant est arrêter le serveur et nous devrions être en mesure de voir les résultats dans le navigateur, et nous avons mis un écran vide et vous vous attendez à l'écran blanc parce que nous n'avons pas défini mois
HD rend ce qui nous intéresse maintenant est le script Java dans ces variables, et cette fois nous ne allons pas regarder la bande de la console. On va regarder la cassette des sources, donc ça va vers les sources. Et dès que nous nous rafraîchissons, permettez-moi de rendre cela un peu plus large. Dès que nous sommes frais, je m'attendrais à ce que le sac D s'installe pour rafraîchir la page. Et ils ont frappé notre première di Bella. Et à ce stade, nous avons défini l'âge dans le script, qui est global et vous pouvez voir sur la droite. C' est exactement ce qui s'est passé. Il a un conseil de portée, et nous pouvons voir la portée de nos variables. Et rappelez-vous sincèrement, l'interpréteur exécute du code de haut en bas. Eh bien, cela signifie qu'il va sauter cette fonction pour l'instant parce que nous n'avons pas exécuté la fonction. Il s'agit uniquement de définir la fonction, et il devrait frapper cette expression d'âge du journal de la console. Voyons si cela se produit,
et cela arrive sur la console, cette expression d'âge du journal. Et à ce stade, quel est l'âge ? C' est vrai. C' est l'ère mondiale. C' est le numéro trois donc quand on franchit ça et il s'exécute et on est tabo, c'est. bande de console est le numéro trois, mais revenons à nos sources. Continuons maintenant. Il a frappé la fonction de portée, et il va exécuter la fonction. Alors exécutons la fonction. Donc ici, c'est touché. L' âge est égal à jeune, mais regardez ce que c'est fait dans la portée. Il a en fait créé une variable locale, et à ce stade, la variable est toujours indéfinie. Rappelez-vous, vous devez prendre soin variable. Ensuite, il est initialisé, et c'est ce qu'il est fait ici initialisé. Mais il n'a pas encore attribué de valeur qui vient dans le mix. Bande adhésive en bas. Arrête ça, Debunker. Maintenant, il est attribué une valeur à la variable, et c'est jeune. C' est continué. Ça va à ça. Si bloc sont attendus pour le sac D et maintenant pour arrêter l'âge à nouveau, c'est exactement ce qu'il est fait. J' espère que vous commencez à ressentir à quel point c'est l'appel. C' est génial, et vous comprenez probablement cela. Très peu de gens font si bien que maintenant nous avons frappé ça. Si bloc nous avons à l'âge suivant, que nous avons défini comme ancien à nouveau, il a été initialisé mais pas encore affecté de valeur. Mais maintenant on lui a assigné Age est la technologie que vous avez vieille quand on a frappé cette console ? Regarde l'âge, on est toujours dans ce bloc. C' est à ce stade. Dans notre code, nous avons accès à la variable bloc, la variable locale et à la variable globale. Hucle ça. Alors continuons à descendre. Quand nous avons frappé cet âge de journal de console, il va console point journal vieux sont attendus parce que nous dans ce bloc. Donc, on s'empare de cette console amère terreur et il est vieux. Donc ça marche. On a notre onglet sources. Maintenant, on touche la console, âge de l'
impasse. Mais à ce stade de notre manteau, regardez ce qui s'est passé. Notre bloc de portée n'a pas de variable de bloc en vous. Il a seulement local dans global, et pour le moment nous dans la portée locale parce que c'est au sommet. Donc l'âge est défini comme jeune, vous êtes ça souffle mon appel d'esprit. Cela continue de me laisser franchir cette étape. Je m'attendais à ce que les jeunes aient été consul. C' est exactement ce qui s'est passé. J' ai entendu dire que c'était un joli petit bonus pour toi. J' espère que vous serez sur le chemin de l'utilisation des outils de débogage pour comprendre globalement les
fonctions locales chèvre et