Comprendre la fonction ticker en JavaScript
Ticker exécute un texte souvent utilisé dans les applications d'affichage numérique ou comme support promotionnel. Ce texte peut afficher des informations telles que des actualités, des publicités ou des annonces de manière accrocheuse. L'exécution du texte est généralement implémentée avec HTML et CSS et peut être utilisée sans JavaScript, bien que de nombreux logiciels proposent également cette fonctionnalité pour une meilleure planification et un meilleur contrôle.
Cet article explique comment fonctionne la fonction ticker en JavaScript, que j'ai rencontré lors d'un défi sur Codewars. Cette fonction nous permet de créer un effet de texte défilant en utilisant JavaScript.
Le ticker est un texte qui se déplace horizontalement, qui est souvent utilisé dans diverses applications pour afficher des informations continuellement mises à jour, telles que les dernières nouvelles, annonces ou publicités. Ces effets peuvent être trouvés sur des écrans numériques ou des tableaux d'affichage électroniques et peuvent généralement être mis en œuvre à l'aide de HTML, CSS et JavaScript.
La fonction ticker en JavaScript dont nous parlerons ci-dessous fournit une solution pour créer des effets de texte dynamiques dans votre application Web.
Voici le code de fonction du ticker dont nous discuterons :
const ticker = (text, width, tick) => { const display = ' '.repeat(width); // 1 text = display + text + display; // 2 tick = tick % (text.length - width); // 3 return text.slice(tick, tick + width); // 4 }
Cette fonction possède trois paramètres :
Ce qui suit est une explication technique de chaque étape de cette fonction :
const display = ' '.repeat(width);
Dans la première étape, nous créons une chaîne vide contenant des espaces aussi grands que la largeur en utilisant la méthode repeat(). La fonction repeat() répétera le caractère spécifié (dans ce cas un espace) le nombre de fois spécifié par width.
Exemple :
Si la largeur est de 5, alors la variable d'affichage contiendra la chaîne ' ' composée de 5 espaces.
text = display + text + display;
Dans la deuxième étape, nous ajoutons des chaînes d'affichage (espaces) au début et à la fin du texte (texte). Cela garantit que le texte dispose d'un espace libre des deux côtés, offrant ainsi un espace pour que le texte puisse se déplacer (faire défiler) sans être coupé.
Exemple :
Supposons que le texte donné soit « Bonjour » et que la largeur soit de 5. Ensuite, après cette ligne, le texte sera :
const ticker = (text, width, tick) => { const display = ' '.repeat(width); // 1 text = display + text + display; // 2 tick = tick % (text.length - width); // 3 return text.slice(tick, tick + width); // 4 }
Grâce à cela, il y a suffisamment d'espace vide à gauche et à droite du texte pour un mouvement plus fluide.
const display = ' '.repeat(width);
Dans la troisième étape, nous utilisons l'opérateur de module (%) pour garantir que la valeur de tick se situe dans une plage valide et ne dépasse pas la longueur du texte qui a été entouré d'espaces.
La valeur text.length - width donne la longueur totale du texte enveloppé (espaces compris) moins la largeur de l'affichage que nous voulons afficher (largeur). Cela garantit que le décalage de texte spécifié par la coche ne dépasse pas la longueur du texte affichable.
Exemple :
Si la longueur du texte après avoir ajouté des espaces est de 15 (par exemple, ' Bonjour ') et que la largeur est de 5, alors text.length - width devient 10. Autrement dit, nous devons seulement nous assurer que les graduations sont dans la plage 0 à 9. Cela garantit que le mouvement du texte est constant et valide sans aucune pièce manquante.
text = display + text + display;
Dans la dernière étape, nous utilisons la méthode slice() pour prendre une partie de la chaîne de texte, en commençant par la position de la graduation jusqu'à la position de la largeur de la graduation. La fonction slice() renvoie la partie de la chaîne qui correspond à cette position.
Exemple :
Par exemple, si tick = 3 et width = 5, alors le code slice(3, 8) produira la sous-chaîne 'Bonjour' à partir de la chaîne 'Bonjour'.
De cette façon, nous affichons des parties du texte avec une longueur qui correspond à la largeur. Chaque fois que cette fonction est appelée avec une valeur de tick différente, le texte affiché se déplacera, créant un effet de mouvement ou de défilement.
Voyons un exemple d'utilisation de cette fonction dans le code :
' Hello '
Le processus qui se produit est :
Si nous augmentons la valeur du tick lors du prochain appel, le texte se déplacera plus loin et la partie du texte qui apparaît changera.
L'effet de mouvement est créé car chaque fois que nous appelons la fonction ticker, la valeur du tick changera. À mesure que la valeur du tick augmente, la partie du texte affichée change également. Cela donne un effet de mouvement car la coche fait défiler le texte de manière dynamique.
Pour tester davantage cet effet, nous pouvons appeler la fonction ticker dans une boucle en augmentant périodiquement la valeur du tick, par exemple en utilisant setInterval() pour mettre à jour l'affichage toutes les quelques secondes.
Si vous souhaitez tenter un défi similaire, j'ai découvert cette fonction via Codewars, et c'est un exercice amusant pour améliorer vos compétences en programmation JavaScript.
Bonne chance et j'espère que cet article sera utile pour comprendre comment fonctionne l'effet ticker en 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!