Javascript相当于PHP Max的数组
javascript equivalent to php max for arrays
我有一个函数在php中选择包含最多元素的数组
$firstArray = array('firstArray','blah','blah','blah');
$secondArray = array('secondArray','blah','blah');
$thirdArray = array('thirdArray','blah','blah','blah','blah');
那么我就得到了长度最大的变量名,像这样:
$highest = max($firstArray, $secondArray, $thirdArray)[0];
,但我正在开发一个应用程序,我想避免使用php,我已经尝试javascript的Math.max()
实现相同的结果,但它不工作的方式相同,除非我做
Math.max(firstArray.length, secondArray.length, thirdArray.length)
但是这没有用,因为我需要知道包含最多元素的数组的名称。还有其他方法可以做到这一点吗?
该函数接受一个数组的数组作为输入,并返回最大的一个。
function largestArray(arrays){
var largest;
for(var i = 0; i < arrays.length; i++){
if(!largest || arrays[i].length > largest.length){
largest = arrays[i];
}
}
return largest;
}
我们可以用你的例子测试一下:
firstArray = ['firstArray','blah','blah','blah'];
secondArray = ['secondArray','blah','blah'];
thirdArray = ['thirdArray','blah','blah','blah','blah'];
// should print the third array
console.log(largestArray([firstArray, secondArray, thirdArray]));
下面的url有一个等效的max()。它支持的不仅仅是数字,就像php一样:
如果你觉得包括第三方库没问题,也许http://underscorejs.org/#max做你想要的:
var aList = [firstArray, secondArray, thirdArray];
_.max(aList, function(each) { return each.length; });
相关文章:
- 如何在映射数组中添加换行符
- javascript结合了数组和字典
- 需要帮助设置json数组
- 不能从angular2中的子组件指定父组件中的数组
- 使用JS将数组转换为json对象
- 数组在递归方法中设置为null
- knockoutjs可观察数组
- Javascript-如何读取json文件中的列并将其保存在Javascript数组中
- 将数组从PHP传递到Javascript
- JavaScript数组排序(函数)用于对表行进行排序,而不是排序
- 在函数中添加数组元素的数值
- 无法通过数组映射绑定
- 你如何在Javascript中的对象数组中找到属性的Min和Max
- 如何将Math.max与对象数组一起使用
- Chrome:如何解决Math.max.apply(Math,数组)上的“超出最大调用堆栈大小”错误
- 使用Math.max获取数组中元素的最大宽度/高度
- 添加了Javascript数组sum min Max
- 通过max属性从数组中获取对象
- 在 JavaScript 中将 max 应用于大型数组时如何避免堆栈溢出
- Javascript相当于PHP Max的数组