亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在對象中查找最大元素及其鍵 - React native

在對象中查找最大元素及其鍵 - React native

料青山看我應如是 2023-05-25 17:01:04
我首先必須告訴我,我瀏覽了此處的網站以找到答案,但我做不到。我有一個包含鍵(服務名稱)和值(計數器)的對象,我只想從該對象中提取最大和最小值及其鍵。一個例子:Object {  "Learn JavaScript": 3, //Max  "Learn React": 2, //Ignore  "manicure": 1, //Min}然后我想創建一個對象數組,這些對象將按降序排列我用來顯示上層結果的代碼: const arrayofServices  = services; //services => state the holding the services          const servicesCounter = arrayofServices.reduce((counterObj, service) => {            if (counterObj.hasOwnProperty(service)) {              counterObj[service] += 1;              return counterObj;          }                      return {              ...counterObj,              [service]: 1            };          }, {});          console.log("Service Counter in =>" ,servicesCounter);有什么建議么?
查看完整描述

2 回答

?
慕神8447489

TA貢獻1780條經驗 獲得超1個贊

再試一次 :)


const obj = {"Learn JavaScript": 3, "Learn React": 2, "manicure": 1};


function MinMaxFromObj(obj) {

  const min = Math.min(...Object.values(obj));

  const max = Math.max(...Object.values(obj));

  const minKey = Object.entries(obj).find(([key, value]) => 

  value === min ? key : null);

  const maxKey = Object.entries(obj).find(([key, value]) => 

  value === max ? key : null);

  return [Object.fromEntries([minKey]), Object.fromEntries([maxKey])];


console.log(MinMaxFromObj(obj));


查看完整回答
反對 回復 2023-05-25
?
縹緲止盈

TA貢獻2041條經驗 獲得超4個贊

這是一種可以幫助您解決問題的方法:


const minMaxEntry = (object) => {

  let minKey;

  let minValue = Infinity;


  let maxKey;

  let maxValue = -Infinity;


  for (const key in object) {

    if (object[key] < minValue) {

      minKey = key;

      minValue = object[key];

    }


    if (object[key] > maxValue) {

      maxKey = key;

      maxValue = object[key];

    }

  }


  const minEntry = { [minKey]: minValue };

  const maxEntry = { [maxKey]: maxValue };


  return [minEntry, maxEntry];

};


// --- //


const object = {

  "Learn JavaScript": 3,

  "Learn React": 2,

  "manicure": 1,

};


const [minEntry, maxEntry] = minMaxEntry(object);


console.log('Min Entry =>', minEntry);

// { "manicure": 1 }


console.log('Max Entry =>', maxEntry);

// { "Learn JavaScript": 3 }


查看完整回答
反對 回復 2023-05-25
  • 2 回答
  • 0 關注
  • 174 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號