如果我有这样的数组:
array = [[1, 5, 8, 9], [3, 7], [3, 8, 33], [2], [0, 6]]
Run Code Online (Sandbox Code Playgroud)
我需要从这个数组中找到最大值和最小值.在这种情况下,max = 33, min = 0
我看到了数组reduce的例子,但我不想找到内部数组的特定索引的最大值.
我发现了很多类似的帖子,但还没有一个完全满足这个问题:如何从 javascript 中的以下 2D 数组中获取最小值和最大值?
[[1,2,3],[4,5,6],[7,8,9]]
Run Code Online (Sandbox Code Playgroud)
即返回 1 和 9。
这个问题并不完全是我所追求的(因为用户想要忽略第 0 列),这里只要求一个一维数组。
这里接受的答案仅要求每组的第一个值。
谁能指出我正确的(可接受的)方法?非常感谢!
我尝试向数组添加min()和max()函数,使用...运算符实现:
Array.prototype.min = Array.prototype.min || function () {
return Math.min(...this);
};
Run Code Online (Sandbox Code Playgroud)
但是,在大型数组上调用这些函数时,出现异常:“RangeError:超出最大调用堆栈大小”。到底是怎么回事?
console.log(new Array(100000).min()); /* works */
console.log(new Array(1000000).min()); /* error */
Run Code Online (Sandbox Code Playgroud) 请考虑此键值对:
var dict_Numbers = {"96": "0",
"97": "1",
"98": "2",
"99": "1",
"100": "4",
"101": "0"}
Run Code Online (Sandbox Code Playgroud)
我希望获得最高价值,在这个例子中是:101.
我怎么能这样做?
谢谢
更新1:
我使用这段代码:快速获取对象属性中的最小/最大值和获取对象最高值的键
但两者都返回Max Value或comapre值
我$string从cURL中检索到这样的:
{"time":0.01,"total_rows":7,"rows":[{"id":968},{"id":969},{"id":970},{"id":971},{"id":972},{"id":973},{"id":974}]}
Run Code Online (Sandbox Code Playgroud)
我想知道如何获得id具有最大值的值(即974),我该如何在PHP中执行此操作?
计算数组最大值的"JavaScriptonic"方法是:
Math.max.apply(null, array)
Run Code Online (Sandbox Code Playgroud)
但是,在大小为2 ^ 16(Chrome,Safari)或2 ^ 18(Firefox)的阵列上出现"超出最大调用堆栈大小"的错误.见https://jsfiddle.net/dxcot206/
我怎样才能安全地使用这种技术?是否有最大的阵列长度可以保证这种技术有效?
在WebWorker中,答案可能会有所不同,因为后台线程通常具有较小的堆栈大小?
给定一组 values [1,2,0,-5,8,3],如何在 JavaScript 中获得最大值?
我知道我可以编写一个循环并跟踪最大值,但我正在寻找一种使用 JavaScript 语法执行此操作的代码效率更高的方法。
所以我尝试找到数组的最小值和最大值并想调用该函数。我编写了这段代码,但它不起作用。我只是不明白为什么。
\nfunction getMinMax(arr){\n let maximum = Math.max(arr);\n let minimum = Math.min(arr);\n let result = ([maximum, minimum]); \n return result;\n};\n\ngetMinMax([10,3,8,1,33])\nRun Code Online (Sandbox Code Playgroud)\n 我需要计算大型数组的最小值/最大值。我知道Math.max.apply(),但是在大型阵列上,它会出现堆栈溢出异常而失败。任何简单的解决方案?
我在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)
如何在不抛出错误的情况下获取数组的最大值?它确实有效.
javascript ×8
arrays ×4
angular ×1
ecmascript-6 ×1
jquery ×1
json ×1
node.js ×1
php ×1
typescript ×1