[英]How to look for the largest number in a key value pair array JavaScript
[英]Getting the largest Number of a key pair value in an Array JavaScript
因此,我試圖獲取“項目”數組中“大小”中編號最大的項目。 並打印出與('item1','item2','item3')中的項目相同的內容
let items = [ { item: 'item1', size: 545 }, { item: 'item2', size: 89 }, { item: 'item3', size: 789 } ]
所以我嘗試了
let sizeMax = Math.max.apply(Math, items.map((o) => { return o.size; })) console.log(sizeMax)
但是它不是ES6方式,我無法弄清楚如何打印出我嘗試過的名稱中尺寸最大的“項目”:
items.forEach((item) => { function arrayMax(item) { return items.size.reduce((h, j) => Math.max(h, j)); } console.log(items.item)
但我無法弄清楚我做錯了什么
您可以采用傳播語法並映射被破壞的屬性。
let items = [{ item: 'item1', size: 545 }, { item: 'item2', size: 89 }, { item: 'item3', size: 789 }], max = Math.max(...items.map(({ size }) => size)); console.log(max);
為了得到item
最大的size
,你可以通過采取geratest大小累加器然后采取通緝財產減少的陣列。
let items = [{ item: 'item1', size: 545 }, { item: 'item2', size: 89 }, { item: 'item3', size: 789 }], max = items.reduce((a, b) => a.size > b.size ? a : b); console.log(max.item);
let items = [ { item: 'item1', size: 545 }, { item: 'item2', size: 89 }, { item: 'item3', size: 789 } ] let max = items.reduce((acc, curr) => (acc.size < curr.size ? curr : acc)) console.log('max item: ',max.item); console.log('max size: ',max.size);
您可以將Array.prototype.sort
與array + object解構分配結合起來:
let items = [{item: 'item1',size: 545},{item: 'item2',size: 89},{item: 'item3',size: 789}]; const [ {item: max} ] = items.sort((a,b) => b.size - a.size); console.log(max);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.