如何在javascript多维数组中获得数组的键和值
How to get keys and values of arrays inside Multidimensional array in javascript
我有一个多维数组,如
MultArrary = [
['a','b'],
['c','d'],
['f','g']
]
我需要的是得到数组中每个数组的键和值,并将其推入另一个数组
Expected array1 = ['a','c','f'];
expected array2 = ['b','d','g'];
关于如何用javascript或rxjs实现这一点的任何想法将是伟大的
在您的情况下,最简单的方法(虽然语法上不正确,请参阅您的问题下面的注释)是使用Map(前提是您处于支持ecmascript6的环境中):
var MultiArray = [
['a', 'b'],
['c', 'd'],
['f', 'g']
];
var m = new Map(MultiArray);
var index0 = Array.from(m.keys());
var index1 = Array.from(m.values());
console.log(index0, index1);
使用Underscore.js你可以使用unzip:
var MultArrary = [
['a', 'b'],
['c', 'd'],
['f', 'g']
];
var rst = _.unzip(MultArrary);
//[['a','c','f'],['b','d','g']]
console.log(rst);
<script data-require="underscore.js@1.8.3" data-semver="1.8.3" src="//cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js"></script>
您可以使用一种方法并在一个任务中构建结果。
您想要的结果是在pivot[0]
和pivot[1]
。
var multArrary = [['a', 'b'], ['c', 'd'], ['f', 'g']],
pivot = multArrary.reduce(function (r, a) {
a.forEach(function (b, i) {
r[i] = r[i] || [];
r[i].push(b);
});
return r;
}, []);
console.log(pivot);
相关文章:
- 警报数组索引和值
- 我想重新排列我的数组和其他数组一样,这个数组是键和值
- 将对象完全转换为键和值的数组:更好的解决方案
- Javascript移除已知值的键和值数组
- 如何循环json数组以获取javascript中的键和值
- 如何将用户定义的键和值添加到数组中
- 包含键和值数组的字典
- 如何制作具有键和值组的动态JavaScript数组
- 如何从 Assoc 数组中选择随机值,然后显示键和值
- 如何在数组中推送以变量作为键和值的新对象,我也不确定我是否用方法替换做对了
- 基于键和值的筛选数组
- JavaScript - 显示数组的键和值
- 将 JSON 转换为具有自定义键和值的对象数组
- 如何映射对象数组中的键和值
- 循环遍历对象并将键和值推入数组
- Javascript数组对象和值
- Jquery映射数组键和值
- Javascript多维数组-键和值
- 数组键和填充
- 将两个数组(键和值)合并到一个对象中