从数组返回变量名?

时间:2014-11-07 20:51:08

标签: javascript arrays

是否可以从数组中返回变量名?

我有一个包含5个变量的数组。为每个变量分配一个数值。

我试图找到数组中的最高值,然后警告其变量名,或者可能使用该变量来处理它。

        var vara = 0; //resultA
        var varb= 0; //resultB
        var varc= 0;  //resultC
        var vard= 0;  //resultD
        var vare= 0;  //resultE

function showResults() {
            var buckets = [vara, varb, varc, vard, vare];
            var largest = Math.max.apply(Math, buckets);


                alert(largest);



        }

以上代码警告最大值,但我想找到相应的变量,例如vara而不是3

1 个答案:

答案 0 :(得分:4)

不,不是。如果你想将某个名称与值相关联,那就是词典。

var obj = {"name": 123, "name2": 234}
obj.name3 = 345; // assign 345 to name3
var valueOfName3 = obj.name3; // get name3

如果您想获得此对象中的最大值(akonsu):

var largest = null;
var keyOfLargestVal = null;
for(var k in obj) { var v = obj[k];
 if (largest === null || v > largest){
   largest = v; keyOfLargestVal = k;
 }
}