我有以下三个变量
x = 3;
y = 1;
z = 2;
如何获得最小的一个?是y。
现在我像下面这样
if(x < y && x < z)
{
var smallest = x;
}
else if(y < x && y < z)
{
var smallest = y;
}
else if(z < x && z < y)
{
var smallest = z;
}
还有其他聪明的方法吗?
P.S:我需要获取该变量名。
答案 0 :(得分:3)
在这种情况下,Math.min可能是不错的选择
x = 3;
y = 1;
z = 2;
console.log(Math.min(x, y, z))
如果您也想要变量名,则可以使用ans
中所述的对象代替
var obj = {
"x": 3,
"y": 1,
"z": 2
};
var smallest = '';
for (var key in obj) {
if (smallest !== '' && obj[key] < obj[smallest]) {
smallest = key;
} else if (smallest === '') {
smallest = key;
}
}
console.log("smallest---", smallest);
答案 1 :(得分:1)
var smallest_value = Math.min( x, y, z);
答案 2 :(得分:0)
尝试一下
SELECT * into public."NewTable" FROM public."ExistingTable";
答案 3 :(得分:0)
您可以通过这种方式拥有
Math.min(x,y,z,..)
如果您在应用程序中设置了大数据集,则下面的内容可能会很有用。 然后您可以通过这种方式使用
var numArray = [1, 2, 3]
Math.min.apply(Math, numArray)
答案 4 :(得分:0)
以我认为最好的方式查看输入内容是您自己的代码。
但是,如果输入是array
或某些dictionary
的形式,则只需循环它们即可轻松找到smallest number
并可以更新索引(如果是数组),或者如果是key
,则获取dictionary
。
例如,
array = (1,2,3,0,4,5,6)
smallest = 0 and its Index=4
now you get the index then you can get the variable name, say
var1 = Index 1, var2 = Index 2 and so on..
如果是字典,您可以直接获取密钥。
答案 5 :(得分:0)
您可以简单地使用Math.min(value1,value2,.....),但是如果仍然要使用常规方法,则可以单击下面的链接查看编写的代码。
let x = 100,y=200,z=30,min = '';
min = x < y && x < z ? 'x = '+x :y<z ?'y = '+y : 'z = '+z;
https://www.w3schools.com/code/tryit.asp?filename=G58KSEBOL67M
答案 6 :(得分:0)
尝试一下:
let x = 3, y = 1, z = 2;
let minArr = Object.entries({x, y, z}).sort((arr1, arr2) => {
return arr1[1] - arr2[1];
}).shift();
console.log(`min: key is "${minArr[0]}", value is ${minArr[1]}`);
答案 7 :(得分:0)
我认为这就是您想要的。
var x = 6;
var y = 7;
var z = 4;
for(o in window){
if(window[o] === Math.min(x,y,z)){
console.log(o);
}
}