簡體   English   中英

最小最大和四舍五入的JavaScript

[英]min max and rounding hex in javascript

我閱讀了以下帖子,但不完全是我的問題,也不是我的問題的答案: 十六進制浮點,roundIng

給定一個浮點數,我如何將其四舍五入為最接近的整個十六進制數,然后在JavaScript中的o和FF之間將其蛤lam呢? 例如,轉換為十六進制后:

1e.fffffffffffe -> 1f
1e.111111111111 -> 1e
ff.fffffffffffe -> ff
-0.111111111111 -> 00

編輯我想出了一些半熟功能,有人在乎改進嗎?

function roundDblDigitHex(x) {
    x = Math.round(x);
    if (x < 0) x = 0;
    if (x > 255) x = 255;
    x = x.toString(16);
    if (x.length === 1) x = '0'+x;
    return x;
}

我喜歡您的解決方案(最后,我也將只使用Math.round() )。 這是我的建議(簡短一點,但代碼相同):

function roundDblDigitHex(x) {
    x = Math.min(Math.max(Math.round(x), 0), 255);

    return ("0" + x.toString(16)).slice(-2);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM