我有几个变量,分配了一些值。例如:
Gain_weight = 0.01 Gain_weather = 0.02
还有一些更喜欢这个。现在我想获得分配了最高值的变量名称。
当我做这样的事情时,它返回的值不是名称。
var rootNode = Math.max(Gain_weight,Gain_smoking,Gain_exercising,Gain_foodhabits,Gain_parent_heartattack,
Gain_alcohol,Gain_occupation,Gain_workinghrs);
因此,如何获取分配最高值的字符串而不是值?
答案 0 :(得分:1)
检查此question后,似乎无法获取该名称。
一种方法可以是使用object
或关联数组,其名称与变量名称相同,并且它的值为变量值
希望此片段有助于理解
// Array with name value pair
var _myDemoArray = [
{name:'Gain_weight',
value:0.01},
{name:'Gain_weather',
value:0.02}]
// sort the array in descending order to get the element with maximum value.
var _getSortedElem = _myDemoArray.sort(function(a,b){
return b.value -a.value;
});
// The first element of this sorted array will have element with maximum value
console.log(_getSortedElem[0].name);
选中此jsfiddle进行演示