Javascript-谁最重?(使用相同的键名访问数组对象中的所有值)

Javascript-谁最重?(使用相同的键名访问数组对象中的所有值),javascript,arrays,javascript-objects,Javascript,Arrays,Javascript Objects,我怎样才能知道谁最重 到目前为止的思维过程——编写代码: 列出所有权重 从大到小排序* 选择最大数字的索引[0] 到目前为止,我还停留在第一步。我可以访问一个字符的特定权重,但不能访问所有权重。我尝试过以下代码: let info = [ { name: 'Harry Potter', weight: 160, hobby: 'quidditch', }, { name: 'Hermione Granger', weight: 130,

我怎样才能知道谁最重

到目前为止的思维过程——编写代码:

  • 列出所有权重
  • 从大到小排序*
  • 选择最大数字的索引[0]
到目前为止,我还停留在第一步。我可以访问一个字符的特定权重,但不能访问所有权重。我尝试过以下代码:

let info = [
  {
    name: 'Harry Potter',
    weight: 160,
    hobby: 'quidditch',
  },
  {
    name: 'Hermione Granger',
    weight: 130,
    hobby: 'reading',
  }
  {
    name: 'Ronald Weasley',
    weight: 185,
    hobby: 'quidditch',
  }
]

但它正在以“未定义”的形式返回。

有很多方法可以做到这一点。您可以简单地对数组排序,然后取最上面的条目

let info=[{姓名:'Harry Potter',体重:160,爱好:'Quiditch',},{姓名:'Hermine Granger',体重:130,爱好:'reading',},{姓名:'Ronald Weasley',体重:185,爱好:'Quiditch',}]

console.log(info.sort((x,y)=>y.weight-x.weight)[0])
有很多方法可以做到这一点。您可以简单地对数组排序,然后取最上面的条目

let info=[{姓名:'Harry Potter',体重:160,爱好:'Quiditch',},{姓名:'Hermine Granger',体重:130,爱好:'reading',},{姓名:'Ronald Weasley',体重:185,爱好:'Quiditch',}]

console.log(info.sort((x,y)=>y.weight-x.weight)[0])
您可以在数组中循环并获取具有最高权重值的对象的索引。通过索引,您还可以访问对象的其他属性。此方法不会改变数组

const char_weight = data['weight']
console.log(char_weight)
let索引=0;
for(设i=1;i

现在,具有最高权重值的对象的索引存储在索引中,您可以访问如下属性:info[index].name、info[index].weight等。您可以通过数组循环,获取具有最高权重值的对象的索引。通过索引,您还可以访问对象的其他属性。此方法不会改变数组

const char_weight = data['weight']
console.log(char_weight)
let索引=0;
for(设i=1;i

现在,具有最高权重值的对象的索引存储在索引中,您可以访问如下属性:info[index].name、info[index].weight、,etc

那么什么是数据?您熟悉每个循环吗?这也是一个副本。那么什么是数据?您熟悉每个循环吗?这也是一个副本。
x.weight
排序的非感官返回值<代码>排序
需要一个数字,而不是布尔值。改用
y.weight-x.weight
。另外,取
[0]
,而不是
。切片(0,1)
。同意。谢谢这是一个很好的解决方案。
x.weight
排序的非感官返回值<代码>排序
需要一个数字,而不是布尔值。改用
y.weight-x.weight
。另外,取
[0]
,而不是
。切片(0,1)
。同意。谢谢这是一个很好的解决方案。