我在 javascript 中有一个低温阵列,我需要获得最低温度,所以我使用了 min.math 函数
I have a low temperature array in javascript and I need to get the lowest temp so I used the min.math function
我在 javascript 中有一个低温阵列,我需要获得最低温度,所以我使用了 math.min 函数。虽然第一次返回低温,然后我得到 NaN。
var lowTempArray = [];
var lowest = Math.min(lowTempArray);
message += '<tr><td colspan="3"class="alt">The lowest temperature of ' + lowest.toFixed(2) + ' occurred on ' + ((date.getMonth() + 1) + '/' + (date.getDate()) + '/' + date.getFullYear()) + '.' + '</td></tr>';
Math.min
将需要一系列数字,如 Math.min( 1,2,3,4,5 )
而不是数组;
您必须像这样手动遍历数组:
var lowest = Number.MAX_VALUE;
for ( var i = 0; i < lowTempArray.length; i++ ) {
if ( lowTempArray[i] < lowest ) {
lowest = lowTempArray[i];
}
}
编辑:让我改写成一个函数:
function lowest( arr ) {
var lowest = Number.MAX_VALUE;
for ( var i = 0; i < arr.length; i++ ) {
if ( arr[i] < lowest ) {
lowest = arr[i];
}
}
return lowest;
}
这样使用:
var lowest = lowest( lowTempArray );
正如其他人所建议的那样,排序也是一种方法,但在浏览长列表时可能需要更多 CPU 的能力。
由于 Math.min
只取一系列数字,我建议只对数组进行排序,然后取第一个元素。
所以你可以
lowTempArray.sort(function(a,b){return a-b;});
var lowest = lowTempArray[0];
然后在您的其他语句中使用 lowest.toFixed(2)
。
干杯:)
因为min
想要一个参数列表,而不是数组,你可以使用apply
来使用数组作为函数的参数列表,例如:
var arr=[4,5,6,3,1,7,8];
Math.min.apply(this,arr); //1
查看更多申请信息:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/apply
我在 javascript 中有一个低温阵列,我需要获得最低温度,所以我使用了 math.min 函数。虽然第一次返回低温,然后我得到 NaN。
var lowTempArray = [];
var lowest = Math.min(lowTempArray);
message += '<tr><td colspan="3"class="alt">The lowest temperature of ' + lowest.toFixed(2) + ' occurred on ' + ((date.getMonth() + 1) + '/' + (date.getDate()) + '/' + date.getFullYear()) + '.' + '</td></tr>';
Math.min
将需要一系列数字,如 Math.min( 1,2,3,4,5 )
而不是数组;
您必须像这样手动遍历数组:
var lowest = Number.MAX_VALUE;
for ( var i = 0; i < lowTempArray.length; i++ ) {
if ( lowTempArray[i] < lowest ) {
lowest = lowTempArray[i];
}
}
编辑:让我改写成一个函数:
function lowest( arr ) {
var lowest = Number.MAX_VALUE;
for ( var i = 0; i < arr.length; i++ ) {
if ( arr[i] < lowest ) {
lowest = arr[i];
}
}
return lowest;
}
这样使用:
var lowest = lowest( lowTempArray );
正如其他人所建议的那样,排序也是一种方法,但在浏览长列表时可能需要更多 CPU 的能力。
由于 Math.min
只取一系列数字,我建议只对数组进行排序,然后取第一个元素。
所以你可以
lowTempArray.sort(function(a,b){return a-b;});
var lowest = lowTempArray[0];
然后在您的其他语句中使用 lowest.toFixed(2)
。
干杯:)
因为min
想要一个参数列表,而不是数组,你可以使用apply
来使用数组作为函数的参数列表,例如:
var arr=[4,5,6,3,1,7,8];
Math.min.apply(this,arr); //1
查看更多申请信息: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/apply