第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

Javascript 中 BigInt 類型的 Math.max 和 Math.min 的替代方案

Javascript 中 BigInt 類型的 Math.max 和 Math.min 的替代方案

搖曳的薔薇 2022-07-08 18:02:45
在 Javascript 中:Math.max 和 Math.min 不適用于 BigInt 類型。例如:> Math.max(1n, 2n)Thrown:TypeError: Cannot convert a BigInt value to a number    at Math.max (<anonymous>)>是否有在 BigInts 上執(zhí)行這些操作的內(nèi)置函數(shù)?
查看完整描述

2 回答

?
繁花不似錦

TA貢獻1851條經(jīng)驗 獲得超4個贊

怎么樣


const bigIntMax = (...args) => args.reduce((m, e) => e > m ? e : m);

const bigIntMin = (...args) => args.reduce((m, e) => e < m ? e : m);

如果你想要兩個


const bigIntMinAndMax = (...args) => {

  return args.reduce(([min,max], e) => {

     return [

       e < min ? e : min, 

       e > max ? e : max,

     ];

  }, [args[0], args[0]]);

};


const [min, max] = bigIntMinAndMax(

   BigInt(40),

   BigInt(50),

   BigInt(30),

   BigInt(10),

   BigInt(20),

);


查看完整回答
反對 回復 2022-07-08
?
陪伴而非守候

TA貢獻1757條經(jīng)驗 獲得超8個贊

經(jīng)過一番谷歌搜索后,答案似乎是否定的,Javascript 對此沒有內(nèi)置函數(shù)。


這是與內(nèi)置簽名匹配的 bigint 的 min 和 max 的實現(xiàn),除了它會為空列表引發(fā)錯誤(而不是返回 +/-Infinity,因為 BigInt 不能表示無窮大):


function bigint_min(...args){

    if (args.length < 1){ throw 'Min of empty list'; }

    m = args[0];

    args.forEach(a=>{if (a < m) {m = a}});

    return m;

}


function bigint_max(...args){

    if (args.length < 1){ throw 'Max of empty list'; }

    m = args[0];

    args.forEach(a=>{if (a > m) {m = a}});

    return m;

}


查看完整回答
反對 回復 2022-07-08
  • 2 回答
  • 0 關(guān)注
  • 217 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號