SECOND |
Seconde |
|---|---|
| Visual Basic | |
Syntaxe
|
Function SECOND(n As DateTime) As Integer |
Paramètres
| Nom | Description |
|---|---|
| n | Ce paramètre permet d'indiquer la date contenant l'expression à traiter |
Description
Cette fonction retourne les secondes d'une heure.
Remarques
- La fonction SECOND en Visual Basic est extrêmement utile pour extraire uniquement la composante "secondes" d'un objet de type DateTime. Cette extraction est indispensable dans des programmes qui nécessitent une précision temporelle accrue, notamment pour le suivi d'événements ou la synchronisation de processus. Elle permet ainsi de traiter facilement des opérations liées aux secondes sans devoir manipuler manuellement la chaîne de caractères de l'heure.
- Le paramètre n passé à la fonction SECOND est de type DateTime, ce qui garantit une certaine robustesse en termes de typage. Cependant, dans l'exemple fourni, des chaînes de caractères sont utilisées directement, ce qui sous-entend que Visual Basic effectue une conversion implicite en DateTime. Cette facilité peut être pratique, mais attention aux erreurs de formatage ou aux valeurs invalides qui pourraient entraîner des exceptions inattendues.
- Lorsque l'heure fournie ne contient pas explicitement de secondes, la fonction SECOND retourne 0, comme on le voit avec "12:34" ou "11:34am". Cette logique est cohérente, mais peut parfois surprendre si l'utilisateur s'attendait à un comportement différent (par exemple, une valeur par défaut différente). Il est donc recommandé de toujours documenter ce comportement dans les applications critiques.
- La fonction SECOND ne renvoie pas un objet complexe mais simplement un Integer, représentant la valeur brute des secondes. Cela la rend extrêmement légère à utiliser et à intégrer dans des calculs ou des affichages. Toutefois, il est parfois nécessaire de reformater la valeur retournée (par exemple, en l'affichant avec deux chiffres) pour des besoins de présentation uniforme.
- Les deux exemples fournis montrent bien l'usage de SECOND non seulement avec des horaires prédéfinis mais aussi avec le temps système courant (Time ou Now). Cela illustre la flexibilité de la fonction dans des contextes statiques (valeurs fixes) ou dynamiques (valeurs système évolutives). Dans des applications temps réel, l'utilisation de Second(Now) est particulièrement fréquente.
- Au niveau de la syntaxe, la simplicité d'utilisation de SECOND suit la logique typique de Visual Basic, où de nombreuses fonctions intégrées acceptent des paramètres souples (par conversion implicite). Cela facilite la rapidité de développement, mais impose une vigilance accrue de la part du développeur pour éviter des comportements imprévus dans des cas limites ou avec des cultures différentes (CultureInfo).
- Un point intéressant est que Visual Basic distingue bien les valeurs "0" en secondes, ce qui peut être utilisé comme un indicateur dans certains algorithmes. Par exemple, on pourrait s'en servir pour déclencher une action spécifique au début de chaque nouvelle minute, en surveillant les secondes égales à zéro. La fonction offre donc une possibilité d'implémenter des minuteries simples sans recourir à des composants plus complexes.
- Enfin, il faut noter que la fonction SECOND ne traite que la partie temporelle, sans se soucier de la date proprement dite. Même si vous lui passez un DateTime complet contenant jour, mois et année, seul l'aspect "heure" est pris en compte pour l'extraction des secondes. Cela la spécialise vraiment dans des traitements sur l'axe du temps court, plutôt que sur des durées ou des périodes plus longues.
Exemples
Voici un exemple d'une utilisation typique de cette fonction :
on obtiendra le résultat suivant :
8:13:14 AM =1412:34 =0
23:12:59 =59
11:34am =0
11:34:43pm =43
Voici un exemple montrant comment exploiter la fonction avec le temps courant :
Dernière mise à jour : Lundi, le 19 novembre 2012