javascript - 将对象数组转换为已排序的数组数组

标签 javascript arrays typescript lodash

我有一个对象数组,比方说

[{a:'one',aa:'eleven'},{a:'two',aa:'twelve'},{a:'three',aa:'thirteen'}]

我想把对象转换成数组,像这样

[['one','eleven'], ['two','twelve'],['three','thirteen']]

作为属性名称应该映射到数组中给定的正确索引

这可以使用 Lodash 或 javascript 吗?

最佳答案

如果原始对象中的某些键必须转到数组中的特定槽,那么您可以创建一个键到槽号的映射。

var data = [{
  a: 'one',
  aa: 'eleven'
}, {
  a: 'two',
  aa: 'twelve'
}, {
  a: 'three',
  aa: 'thirteen'
}];

var keyToSlot = {
  a: 0,
  aa: 1
};

var result = data.map(function(entry) {
  var keys = Object.keys(entry);
  return keys.reduce(function(acc, key) {
    var slot = keyToSlot[key];
    acc[slot] = entry[key];
    return acc;
  }, []);
});

console.log(result);

关于javascript - 将对象数组转换为已排序的数组数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43456313/

相关文章:

ruby-on-rails - Ruby 条件数组

javascript - 自动完成不过滤列表项 Angular

typescript - 具有给定类型的事件的有效负载类型推断

typescript - 在已安装的依赖项中排除 @types 类型

javascript - 更高的性能 - Map.prototype.forEach 还是 for..of?

javascript - window.navigator 还是导航器?

javascript - Canvas drawImage 使用数据 URL

javascript - ReactJS:从 Int32Array 和 Float32Array 等索引集合上的映射返回 div 或 span 返回 0 和 NaN

javascript - 是否有任何简写方法将以标题作为第一个数组的字符串数组转换为数组对象?

java - 在 HTML 上显示返回为 JSON 的字节数组(PDF 文件)