2020年1月6日 星期一

ES6 取得某個陣列或物件裡某個屬性的最大最小值

如果我們要在一個陣列或物件裡直接抓到最大或最小的值,用 ES6 寫法簡便很多,首先準備這樣的陣列和物件。

var arr = [1, 8, 3, 5];
var obj = [
    { own: 53, name: 'Jason' },
    { own: 50, name: 'Tom' },
    { own: 12, name: 'Susan' },
    { own: 41, name: 'Amy' }
];

直接用 Math.max(...arr) 就可以取得陣列裡最大的值,而要對物件裡某個屬性抓到最大的值,則是使用 Arrow function 來改寫 Array.map() 組出來的值就好,要取最小值則把 min 取代 max 就好:
let max=Math.max(...arr) //8
let most=Math.max(...obj.map(a => a.own))  //53
let min=Math.min(...arr) //8
let least=Math.min(...obj.map(a => a.own)) //12

真的是漂亮很多呢。
反應:

0 意見:

Related Posts Plugin for WordPress, Blogger...