如何知道在Math.max()之后包含最大数的变量的名称

假设我有以下变量:

var num1 = 48;
var num2 = 420;
var num3 = 39;

我想知道最大值,为此我使用:

var max = Math.max(num1, num2, num3);

有没有办法知道 num2 是最大数字?这个例子只有 3 个变量,但假设我有 20 或 500。我需要以最有效的方式知道最大值及其变量名称。

回答

您无法知道变量名,因为变量名没有传递给 javascript 函数,只有值,但您可以有一个解决方法

使用数组:

var numbers = [48,420,39];

const index = numbers.indexOf(Math.max(...numbers))

console.log(`The max value is the ${index+1}nth value in the array`)

有对象

var num1 = 48;
var num2 = 420;
var num3 = 39;

var numbers = {num1, num2, num3}

const maxVal = Math.max(...Object.values(numbers))
const key = Object.keys(numbers).find(key => numbers[key] === maxVal)

console.log(key, maxVal)


以上是如何知道在Math.max()之后包含最大数的变量的名称的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>