使变量名称成为动态变量

时间:2010-02-20 20:27:19

标签: javascript asp-classic

我希望有人可以帮助我以下......

我下面的代码是用经典的asp和javascript写的......

我在下面的代码my2String1中有这个变量,我怎么能把它变成一个动态变量,如:

  • my2String1_1
  • my2String1_2
  • my2String1_3

我有一个数据库值Recordset2.Fields.Item("article_no").Value,它可能是动态值,如:

my2String1_Recordset2.Fields.Item("article_no").Value(这应该可以解决问题)但我不确定如何实现它......

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();
}

如果您对如何解决这个问题有任何想法,请帮助我

1 个答案:

答案 0 :(得分:3)

我将忽略那些代码,因为它会使问题蒙上阴影。您正在寻找的JScript功能是能够在对象上创建命名属性: -

var myDescriptions = {}

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

myDescriptions[name] = description;

Response.Write(myDescriptions[name]);

会向回复发送“这是一个测试”。