javascript - 返回具有以下格式的数组 : [lowestKey, highestKey]

标签 javascript

我正在尝试返回具有以下格式的数组:[lowestKey, highestKey]。这样做最简单的方法是什么?我使用了一个 for 循环(尚未完成),但我有点不知所措下一步该做什么?

为清楚起见:该函数应该接受一个对象并返回一个包含最低和最高键的数组。

这是我目前所拥有的:

function minMaxKeyInObject(arr) {
  let min = arr[0].y, max = arr[0].y;

  for (let i = 1, len=arr.length; i < len; i++) {
    let v = arr[i].y;
    min = (v < min) ? v : min;
    max = (v > max) ? v : max;
  }

  return [min, max];
}

console.log(
  minMaxKeyInObject({ 2: 'a', 7: 'b', 1: 'c', 10: 'd', 4: 'e' }),
  minMaxKeyInObject({ 1: 'Elie', 4: 'Matt', 2: 'Tim' })
  );

我正在尝试返回 [1, 10][1, 4]

最佳答案

Object.keys()获取 key ,然后返回一个带有 Math.min() 的数组/Math.max()

function minMaxKeyInObject(obj) {
  let keys = Object.keys(obj);

  return [Math.min(...keys), Math.max(...keys)];
}

console.log(
  minMaxKeyInObject({2: 'a',7: 'b',1: 'c',10: 'd',4: 'e'}),
  minMaxKeyInObject({1: 'Elie',4: 'Matt',2: 'Tim'})
);

关于javascript - 返回具有以下格式的数组 : [lowestKey, highestKey],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59536176/

相关文章:

javascript - 同步 AJAX 调用如何导致内存泄漏?

javascript - JavaScript 规范是否定义运行时应如何跟踪在表达式中创建的对象?

javascript - postman 脚本 : how to decode token

javascript - VueJS Hello World 示例不渲染

javascript - 站点在本地存储敏感数据

javascript - ChartWrapper 不显示图表

javascript - 使元素溢出 iframe

javascript - 为什么 jQuery 工具 CDN 链接指向广告?

javascript - $http GET 刷新页面

javascript - 验证通过后提交表单