我需要计算大型数组的最小值/最大值。我知道Math.max.apply(),但是在大型阵列上,它会出现堆栈溢出异常而失败。任何简单的解决方案?
我有一个像这样的数组
a=[
[1,6,6,8,0],
[7,3,2,6],
[7,3,2]
]
Run Code Online (Sandbox Code Playgroud)
在这里,我需要找到内部数组的最大长度.我需要用'0'替换其他.
例如,第一个数组有5个元素,这是最大长度,所以我需要将'0'放到第2和第3个数组,直到达到最大长度(即5).我该怎么办?
我正在尝试编写一种算法,该算法查找数组中的最小和最大值,第二大和第二小值。
我尝试了以下方法:
numbers = [2, 4, 9, 2, 0, 16, 24]
var largest = numbers[0];
var smallest = numbers[0];
for (var i = 1; i < numbers.length; i++) {
if (numbers[i] > largest) {
largest = numbers[i];
}
else if(numbers[i] < smallest) {
smallest = numbers[i];
}
console.log(largest);
console.log(smallest);
}
Run Code Online (Sandbox Code Playgroud)
这似乎不起作用,只是打印出数组...我在做什么错?
max我需要一种在 JavaScript 中查找数组的干净方法。说是arrayMax,那么:
arrayMax([]) // => 0
arrayMax([1], [2]) // => 2
arrayMax([-1]) // => -1
Run Code Online (Sandbox Code Playgroud)
我尝试过的:
Math.max.apply(null, [1,2,3]) // => 3
Run Code Online (Sandbox Code Playgroud)
但它不适用于:
Math.max.apply(null, []) // => -Infinity
Run Code Online (Sandbox Code Playgroud)
请注意,这不是与此问题的重复,因为我希望空数组返回 0,而不是-Infinity
我在Typescript中得到以下错误:
'number []'类型的参数不能分配给'number'类型的参数
我得到数组的最大值没有以下错误:
analysis_horizon_array_test: number[] = [];
this.analysis_horizon_array_test.push(1)
console.log(Math.max(this.analysis_horizon_array_test));
Run Code Online (Sandbox Code Playgroud)
如何在不抛出错误的情况下获取数组的最大值?它确实有效.
将数组的最小值和最大值分成两个变量的最佳方法是什么?我目前的方法感觉很冗长:
var mynums = [0,0,0,2,3,4,23,435,343,23,2,34,34,3,34,3,2,1,0,0,0]
var minNum = null;
var maxNum = null;
for(var i = 0; i < mynums.length; i++) {
if(!minNum) {
minNum = minNum[i];
maxNum = maxNum[i];
} else if (mynums[i] < minNum) {
minNum = mynums[i];
} else if (mynums[i] > minNum && mynums[i] > maxNum) {
maxNum = mynums[i]
}
}
Run Code Online (Sandbox Code Playgroud)
其他似乎"解决"这个问题的帖子看起来很旧,我觉得2017年一定有更好的方法.
可能重复:
JavaScript:最小和最大数组值?
var test = [-42, 0, 8];
var biggest=-Infinity;
for (i=0; i<test.length;i++)
{if (test[i]>biggest)
alert('It is!');
biggest = test[i];
else
alert("It isn't!");}
alert("The biggest element is:" + biggest);
Run Code Online (Sandbox Code Playgroud)
我正在尝试编写一个程序来查找数组中的最大数字,但我的代码不起作用.有什么帮助吗?
我有一个选择选项,它是一个转换选择而不是正常选择.
<select>
<option value="0">apple</option>
<option value="1">orange</option>
<option value="2">bannan fruit</option>
</select>
Run Code Online (Sandbox Code Playgroud)
如何使用Jquery在选项(bannan fruit)中找到最大长度?
我已经知道JavaScript Math.max(13, 24, n)可以从传递的参数中返回最大数量,但是我想知道的是如何从JavaScript数组中获取最大数量,例如:Math.max( [23, 482, 84, 0, 3] )where Math.max无效。
您好我试图使用Math.min,但我得到NaN作为结果,这是代码.
使用Math.min的方法
method() {
var DeltaPrueba = this._markerService.getDeltasRx1();
console.log(DeltaPrueba); // 1
var menor = Math.min(DeltaPrueba);
console.log(menor); //1
}
Run Code Online (Sandbox Code Playgroud)
服务
CalculateDeltas(){
/* do some math to calculate then save in array Deltas*/
Deltas = [DeltaT1,DeltaT2,DeltaT3,DeltaT4,DeltaT1CR,DeltaT2CR,DeltaT3CR,DeltaT4CR] ;
}
getDeltasRx1(){
return Deltas;
}
Run Code Online (Sandbox Code Playgroud)
控制台日志编号1显示包含所有de数据的数组,如下所示:
["18.20","0.00","425.97","316.87","667.80","422.34","425.99","316.89"]
控制台日志编号2显示NaN:
为NaN