Tip:
Highlight text to annotate it
X
ok, ici je dans cet exemple javascript asynchronisme
juste pour avoir une idée de la façon dont cette partie asynchrone
Je fis un exemple simple ici
que nous insérons ici un certain nombre de secondes
cliquez sur le bouton et il nous dit chaque demi-seconde
et montre à la fin d'un message
programmation qui ne sont pas chose très importante ici HTML
il est tout simplement matérialiser le style
qui ne dispose que ce bouton ici
appeler une fonction javascript
si ce bouton est là, comptez les secondes
qu'il appelle le "compteur"
Voici un exemple simple de la façon dont nous le faisons
ok, ce que je faisais, je l'ai dit ici 3 variables
pour nous aider, ce qui est: "segundosContar"
qui sont en second lieu d'insérer ici
si 5
nous, "compter", qui est le nombre indiqué dans le droit de ballon noir
il est incrémenté
et je besoin d'un identifiant d'une opération ici
appelé "setInterval"
avant de montrer que, dans cet exemple asynchronisme
Je dois parler
ces deux fonctions qui vient avec l'API javascript
qui sont le "setTimeout" et "setInterval"
Cette fonction de "setTimeout" il effectue les opérations suivantes:
Nous passons 2 paramètres à elle
un rappel et un autre qui et sont les millisecondes
le rappel est passé une fonction qui sera appelée après avoir passé certaines millisecondes
Nous avons adopté comme second paramètre
ce qui se passe: quand vous passez le nombre de millisecondes passées dans le deuxième paramètre
par exemple, 3000 millisecondes, 3 secondes seront
Elle est appelée la première fonction est le paramètre de rappel
dans ce cas, lorsque vous avez terminé les secondes ont été capturées à partir de l'écran, qui a été entré
(I ici pour convertir secondes) sera appelé cette fonction ici, "fimContador"
et avant que je finisse l'explication de cette fonction
Je dois présenter la deuxième fonction de javascript API qui est le "setInterval"
Le "setInterval" est similaire à "setTimeout"
mais la différence est qu'il appelle la fonction de rappel en continu
après la quantité de temps qui est passé comme second argument
ici les paramètres sont égaux, rappel et millisecondes
Mais la fonction de rappel qui est passé ici
il sera appelé toutes les 500 millisecondes
ou une autre quantité de millisecondes passé ici
et revenir ici le "setInterval"
Il est un identifiant de ce compteur, cette minuterie, le "setInterval"
puis-je obtenir cette poignée il revient, et de garder ici à cette variable "timer"
parce qu'il continue de fonctionner ici indéfiniment jusqu'à ce que je le fais
Je manipule avec, fais ceci: "clearInteval (timer)" à ce rappel terme ici le "setInterval"
alors maintenant je ne peux pas expliquer juste, ce qui se passe
J'ai attrapé ici la variable de comptage
0 parce que l'attribut peut avoir été fait auparavant et un autre de compter le nombre étant supérieur à 0
Je pris l'écran, les secondes comptent, se transformer en nombre
avec le numéro déjà transformé ici, je peux faire une multiplication
si je l'étape 3 par exemple ici, je fais fois en 1000
ce serait la transformation en millisecondes
3 fois 1000 = 3000 millisecondes sont 3 secondes
et ici, commence à compter ici que dans le cas ici serait 3 secondes
voici ici "setInterval"
que toutes les 500 millisecondes entreront dans cette fonction de rappel ici
et d'ajouter 0,5 à la variable "count" qui est ici
et il est ici aussi être mis à zéro
en cas ont déjà été fait un compte
et cette variable est ici que d'un certain nombre de variables
Je commence à le montrer sur l'écran toutes les 500 millisecondes
affiche avec le "toast" que le noir contextuel
le nombre de la somme du nombre, combien de secondes se sont écoulées
lorsque le temps de fin "setTimeout"
puis il appelle la "fimContador" cette fonction
Vous prendrez cet identifiant de minuterie ici
va nettoyer, donc ne sera plus appelé la fonction de rappel "setInterval"
puis montré une alerte combien de secondes
Ils ont été signalés sur le reste du message
ok, donc nous allons le mettre en pratique, le débogage pour voir si cela fonctionne
nous sommes venus ici dans le navigateur
F12 à déboguer
ici, je vais ouvrir le fichier javascript
et j'ai ici quelques points d'arrêt placés dans certains points stratégiques
ok, je l'ai réalisé ici
permettez-moi de meilleure position ici, ce débogueur, afin que nous puissions mieux voir le message contextuel
Je clique sur le 2e chef
Ici, le point d'arrêt est écrasé
nous pouvons voir que le comte était déjà à 4,5
elle mis à zéro
alors je vais ici 5 secondes, elle converti en nombre
maintenant, je peux faire une multiplication avec elle
pris 5 fois 1000 = 5000 millisecondes
noter que passé maintenant et tout droit ici
sans arrêter ici
il arrive à être asynchrone
elle passe par ici et ne sera appelée à nouveau dans la fonction passée en rappel
ok, maintenant nous arrivons ici encore
noter que la même chose se fera dans le "setInterval"
seulement il a quitté le numéro d'identification de comptage
ok, exécutons
et est tombé ici de notre "setInterval"
qui sera en cours d'exécution toutes les 500 millisecondes, une demi-seconde
count = 0
il était de 0,5 acrecido
et a montré le message ici
même chose, est allé à 1 et ainsi de suite
Je vais enlever ce point d'arrêt pas arrêter
et lorsque la portée de 5 secondes, ici
Il est tombé ici, effacé l'intervalle ne doit pas être en cours d'exécution à nouveau et montre l'alerte
"5 secondes passées, en cours d'exécution sur," Je pense que je l'ai écrit mal ici haha
et que, je crois qu'il est déjà possible
avoir une idée de ce qui est l'asynchronisme avec javascript
et nous allons passer à la rubrique suivante