如何在一个巨大的多维数组中找到每列的最大长度
How to find the largest length for every column in a huge multidimensional Array
我们有这种类型的数组,max表示列中单词的长度。
var data = [
["1111", "44"],
["222", "55555" ],
["33", "666" ],
...
];
"1111".length > "222".length > "33".length,
"55555".length > "666".length > "44".length
var max -> [4,5];
因为这个数组真的很大,所以最有效的方法是什么?
var data = [
['ABC', 'ABCD', 'ABCDEF', 'abcd', 'a', 'Abcdef', 'Abcderfg', 'A', 'ABC'],
['ABCD', 'ABC', 'ABCDEF', 'abc', 'AB', 'Abcdef', 'abcd', 'ABC', 'ABC'],
['Abcderfg', 'ABC', 'ABCDEFGH', 'abc', 'A', 'ABCDEF', 'abcd', 'AB', 'ABC']
];
var _maxs = [];
var lenghtOfRow = data[0].length, _maxs = [];
for (var i=0; i<lenghtOfRow; i++)
_maxs.push(0);
data.forEach(function (record) {
record.forEach(function (vl, indx) {
if (vl.length > _maxs[indx])
_maxs[indx] = vl.length;
})
});
console.log(_maxs);
有没有更有效的方法?
更新:
_maxs = [];
data.forEach(function (record) {
record.forEach(function (vl, indx) {
if (vl.length > (_maxs[indx]|| 0))
_maxs[indx] = vl.length;
})
});
相关文章:
- 如何在映射数组中添加换行符
- javascript结合了数组和字典
- 需要帮助设置json数组
- 不能从angular2中的子组件指定父组件中的数组
- 使用JS将数组转换为json对象
- 数组在递归方法中设置为null
- knockoutjs可观察数组
- Javascript-如何读取json文件中的列并将其保存在Javascript数组中
- 将数组从PHP传递到Javascript
- JavaScript数组排序(函数)用于对表行进行排序,而不是排序
- 在函数中添加数组元素的数值
- 无法通过数组映射绑定
- 如何在一个巨大的多维数组中找到每列的最大长度
- 在JavaScript中循环遍历一个巨大的数组
- 用一个巨大的字符串“”转换数组;数字”;,用逗号分隔成一个数字数组(而不是字符串)
- 对一个巨大的数组进行并行或同步迭代会更快吗?
- 我怎么能处理巨大的javascript数组(数组的20万个坐标)在浏览器端有效
- 使用数组值缩短一个巨大的列表
- 这个巨大的javascript数组从数据库加载崩溃我的网站
- 在Internet Explorer 11中加载巨大的数组导致堆栈溢出