VBScript - Tableaux

Qu'est-ce qu'un tableau?

On sait très bien qu'une variable est un conteneur pour stocker une valeur. Parfois, les développeurs sont en mesure de conserver plusieurs valeurs dans une seule variable à la fois. Lorsqu'une série de valeurs est stockée dans une seule variable, on parle alors dearray variable.

Déclaration Array

Les tableaux sont déclarés de la même manière qu'une variable a été déclarée, sauf que la déclaration d'une variable de tableau utilise des parenthèses. Dans l'exemple suivant, la taille du tableau est mentionnée entre crochets.

'Method 1 : Using Dim
Dim arr1() 'Without Size

'Method 2 : Mentioning the Size
Dim arr2(5) 'Declared with size of 5

'Method 3 : using 'Array' Parameter
Dim arr3
arr3 = Array("apple","Orange","Grapes")
  • Bien que la taille du tableau soit indiquée comme 5, elle peut contenir 6 valeurs car l'index du tableau commence à zéro.

  • L'index du tableau ne peut pas être négatif.

  • Les tableaux VBScript peuvent stocker tout type de variable dans un tableau. Par conséquent, un tableau peut stocker un entier, une chaîne ou des caractères dans une seule variable de tableau.

Attribution de valeurs à un tableau

Les valeurs sont affectées au tableau en spécifiant la valeur d'index du tableau par rapport à chacune des valeurs à affecter. Cela peut être une chaîne.

Exemple

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim arr(5)
         arr(0) = "1"            'Number as String
         arr(1) = "VBScript"     'String
         arr(2) = 100            'Number
         arr(3) = 2.45           'Decimal Number
         arr(4) = #10/07/2013#   'Date
         arr(5) = #12.45 PM#     'Time

         document.write("Value stored in Array index 0 : " & arr(0) & "<br />")
         document.write("Value stored in Array index 1 : " & arr(1) & "<br />")
         document.write("Value stored in Array index 2 : " & arr(2) & "<br />")
         document.write("Value stored in Array index 3 : " & arr(3) & "<br />")
         document.write("Value stored in Array index 4 : " & arr(4) & "<br />")
         document.write("Value stored in Array index 5 : " & arr(5) & "<br />")

      </script>
   </body>
</html>

Lorsque le code ci-dessus est enregistré au format .HTML et exécuté dans Internet Explorer, il produit le résultat suivant -

Value stored in Array index 0 : 1
Value stored in Array index 1 : VBScript
Value stored in Array index 2 : 100
Value stored in Array index 3 : 2.45
Value stored in Array index 4 : 7/10/2013
Value stored in Array index 5 : 12:45:00 PM

Tableaux multidimensionnels

Les tableaux ne sont pas seulement limités à une seule dimension et peuvent avoir un maximum de 60 dimensions. Les tableaux à deux dimensions sont les plus couramment utilisés.

Exemple

Dans l'exemple suivant, un tableau multidimensionnel est déclaré avec 3 lignes et 4 colonnes.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim arr(2,3)	' Which has 3 rows and 4 columns
         arr(0,0) = "Apple" 
         arr(0,1) = "Orange"
         arr(0,2) = "Grapes"           
         arr(0,3) = "pineapple" 
         
         arr(1,0) = "cucumber"           
         arr(1,1) = "beans"           
         arr(1,2) = "carrot"           
         arr(1,3) = "tomato"    
         
         arr(2,0) = "potato"             
         arr(2,1) = "sandwitch"            
         arr(2,2) = "coffee"             
         arr(2,3) = "nuts"            
                  
         document.write("Value in Array index 0,1 : " &  arr(0,1) & "<br />")
         document.write("Value in Array index 2,2 : " &  arr(2,2) & "<br />")

      </script>
   </body>
</html>

Lorsque le code ci-dessus est enregistré au format .HTML et exécuté dans Internet Explorer, il produit le résultat suivant -

Value stored in Array index : 0 , 1 : Orange
Value stored in Array index : 2 , 2 : coffee

Déclaration Redim

L'instruction ReDim est utilisée pour déclarer des variables de tableau dynamique et allouer ou réallouer de l'espace de stockage.

ReDim [Preserve] varname(subscripts) [, varname(subscripts)]
  • Preserve - Un paramètre facultatif utilisé pour conserver les données dans un tableau existant lorsque vous modifiez la taille de la dernière dimension.

  • varname - Un paramètre obligatoire, qui indique le nom de la variable, qui doit suivre les conventions de dénomination de variable standard.

  • subscripts - Un paramètre obligatoire, qui indique la taille du tableau.

Exemple

Dans l'exemple ci-dessous, un tableau a été redéfini, puis conservé les valeurs lorsque la taille existante du tableau est modifiée.

Note - Lors du redimensionnement d'un tableau plus petit qu'il ne l'était à l'origine, les données des éléments éliminés seront perdues.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim a()
         i = 0
         redim a(5)
         a(0) = "XYZ"
         a(1) = 41.25
         a(2) = 22
           
         REDIM PRESERVE a(7)
         For i = 3 to 7
         a(i) = i
         Next
           
         'to Fetch the output
         For i = 0 to ubound(a)
            Msgbox a(i)
         Next
      </script>
   </body>
</html>

Lorsque nous enregistrons le script ci-dessus au format HTML et l'exécutons dans Internet Explorer, il produit le résultat suivant.

XYZ
41.25
22
3
4
5
6
7

Méthodes de tableau

Il existe diverses fonctions intégrées dans VBScript qui aident les développeurs à gérer efficacement les tableaux. Toutes les méthodes utilisées avec les tableaux sont répertoriées ci-dessous. Veuillez cliquer sur le nom de la méthode pour connaître en détail.

Fonction La description
LBound Une fonction, qui renvoie un entier correspondant au plus petit indice des tableaux donnés.
UBound Une fonction, qui renvoie un entier correspondant au plus grand indice des tableaux donnés.
Divisé Une fonction, qui renvoie un tableau contenant un nombre spécifié de valeurs. Divisé en fonction d'un délimiteur.
Joindre Une fonction, qui renvoie une chaîne contenant un nombre spécifié de sous-chaînes dans un tableau. C'est une fonction exactement opposée à la méthode de fractionnement.
Filtre Une fonction, qui renvoie un tableau de base zéro qui contient un sous-ensemble d'un tableau de chaînes basé sur un critère de filtre spécifique.
IsArray Une fonction, qui renvoie une valeur booléenne qui indique si la variable d'entrée est ou non un tableau.
Effacer Une fonction, qui récupère la mémoire allouée pour les variables du tableau.