javascript - 如何接近和对齐数组中的元素?

标签 javascript arrays

我已经尝试过:

let age = arr.sort(function(a, b) {
    return b -a;
});
它适用于简单的数组,但它不起作用。在这个数组中:
let list = [
  [
    ['firstName', 'Joe'],
    ['age', 42],
    ['gender', 'male'],
  ],
  [
    ['firstName', 'Mary'],
    ['lastName', 'Jenkins'],
    ['age', 36],
    ['gender', 'female'],
  ],
  [
    ['lastName', 'Kim'],
    ['age', 40],
    ['gender', 'female'],
  ],
];
它是双数组,并且“年龄”索引定位不同。我怎样才能接近“年龄”并对齐?我想升序排序。

最佳答案

您可以使用 fromEntries 将您的数组项转换为对象,然后排序。但是您应该考虑将项目更新为对象以避免这种不必要的转换。

const list = [ [ ['firstName', 'Joe'], ['age', 42], ['gender', 'male'], ], [ ['firstName', 'Mary'], ['lastName', 'Jenkins'], ['age', 36], ['gender', 'female'], ], [ ['lastName', 'Kim'], ['age', 40], ['gender', 'female'], ], ];
list.sort((a, b) => Object.fromEntries(a).age - Object.fromEntries(b).age);

console.log(list);

关于javascript - 如何接近和对齐数组中的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65574041/

相关文章:

java - 反转字符串中的每个单词并将单词的开头大写

javascript - 从字符串创建数组

php - PHP 中列的总和

javascript - 为什么我的 React 应用程序在获取数据后会重新加载?

javascript - Cocos2D JS Vec2 未定义

javascript - js 在 Div 中查找类 + 切换 CSS/隐藏一个显示其他

PHP in_array 使用文本文件中的值不起作用

javascript - 我想将 onclick 函数分配给这样的按钮,但它不起作用,为什么?

javascript - 使用带有 UIWebView 的 Javascript 处理 ePub 分页时出现问题

java - 如何仅打印数组中具有重复字符的单词?