2010-02-20 6 views
2

J'espère que quelqu'un peut me aider avec ce qui suit ...Faire un nom de variable une variable dynamique

Je le code ci-dessous il est écrit en asp classique et javascript ...

Je cette variable dans le code ci-dessous my2String1 comment puis-je faire une variable dynamique comme:

  • my2String1_1
  • my2String1_2
  • my2String1_3

J'ai une valeur de base de données Recordset2.Fields.Item("article_no").Value qui pourrait être la valeur dynamique comme:

my2String1_Recordset2.Fields.Item("article_no").Value (qui devrait faire l'affaire) mais je ne suis pas sûr de savoir comment mettre en œuvre ...

while((Repeat1__numRows-- != 0) && (!Recordset2.EOF)) { 
    var my2String1 = ""+(Recordset2.Fields.Item("article_description").Value)+""; 
    my2String = my2String1; 
    var my2regexp = new RegExp(checkduplicates, "ig"); 
    my2Array = my2String1.match(my2regexp); 
    my2length = my2Array.length; 

    for (i = 0; i < my2length; i++) { 
     my2Array[i] = '\''+my2Array[i]+'\''; 
    } 

    var arr = (myArray+my2Array).split(','); 
    var sorted_arr = arr.sort(); 
    var results = []; 

    for (var i = 0; i < arr.length - 1; i += 1) { 
     if (sorted_arr[i + 1] == sorted_arr[i]) { 
      results.push(sorted_arr[i]); 
     } 
    } 

    Repeat1__index++; 
    Recordset2.MoveNext(); 
} 

Si vous avez des idées sur la façon de résoudre ce s'il vous plaît me aider

Répondre

3

Je vais ignorer cette charge de code, car il brouiller les cartes. La caractéristique de JScript vous cherchez à est la possibilité de créer des propriétés nommées sur un objet: -

var myDescriptions = {} 

var name = "Test" 
var description = "This is a test" 

myDescriptions[name] = description; 

Response.Write(myDescriptions[name]); 

enverraient « Ceci est un test » à la réponse.

+0

Je suis toujours aux prises avec cela, mais je pense que votre solution est utile. Ma réponse aux résultats est-elle la même pour tous mes résultats? Y at-il un moyen que je peux appeler un résultat spécifique par Response.Write (myDescription [test1]) et obtenir la valeur pour le test 1 - puis peut-être appeler myDescription [test2]) et obtenir la valeur pour cela? –

+0

@Gerald: Si vous modifiez votre question avec une description de ce que votre code essaie réellement de faire, cela peut être utile. Si vous décrivez les jeux d'enregistrements en entrée et la sortie souhaitée, nous pouvons probablement vous donner une solution plus complète et décrire les techniques utilisées dans le processus. – AnthonyWJones

+0

après la mise en œuvre de la solution sur toutes les variables, il fonctionne maintenant parfaitement - j'ai seulement fait un remplacement sur une variable, mais les autres devaient changer aussi bien –

Questions connexes