91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

web前端入門到實戰:JS浮點數值問題

發布時間:2020-06-08 03:04:00 來源:網絡 閱讀:281 作者:前端向南 欄目:web開發
一、JS能夠正確表示的整數
Math.pow(2,53) //即9007199254740996
"9007199254740996".length //16
9007199254740993  // 9007199254740992

備注:

1. 2的53次方,并不是按數值長度設置的,
2. 總數量級為百萬億
3. 超出會顯示,但是不正常(表現為max+1=max;輸入16~21之間位數的9會直接往上+1等;)所以不能用于正常計算
4.21位會顯示1e+21

安全值判斷(ES6)Number.isSafeInteger(num):

Number.isSafeInteger(9007199254740993)  // false (存在一個邊界問題)
Number.isSafeInteger(990)  // true
Number.isSafeInteger(9007199254740993 - 990)  // true
9007199254740993 - 990
// 返回結果 9007199254740002
// 正確答案應該是 9007199254740003
二、浮點型數
9007199254700.3333 //9007199254700.334
"9007199254700.334".length //17(包含小數點)

.000001 //0.000001
.0000001 //1e-7
1.0000001 //1.0000001

9.0071992547409919 //9.007199254740993

備注:

1. 并不是兩邊都是2的53次方而是合在一起
2. 一起共16位,超出向上取整,
3. 如果小數位數超出,不一定是截斷還是向上進,如上
3. 0.000001會顯示1e-7,但前面帶個整數就不會了

以上僅表示一些測試現象,留做注意和參考

三、位運算(32位)

JS里面盡管能夠正確表示的數值量在2^53,但是位運算能夠正常運算的范圍卻依然是32位,第一位為符號位,所以是2^31,轉成10位的邊界值是(2147483648)。

~~2147483647
2147483647
~~2147483648
-2147483648
~~2147483649
-2147483647
~~2147483650
-2147483646

備注:

1. JS的位移運算符有:(|,&,<<,>>,~,^) ,要特別注意使用時候的位數限制

2. 如上的按位取反運算可以看出,超出部分會變成負數往后減

四 、兩位小數價格的處理方式

一般處理方式都是轉整以后運算,再除以100,例如:

const priceMultiply=(a,b)=>(a*b*100+.5|0)/100; //乘法
priceMultiply(18.12,10) //181.2 //后面不帶0的數字
(18.12*10).toFixed(2) //181.20 //后面帶0的字符串
web前端開發學習Q-q-u-n:⑦⑧④-⑦⑧③-零①② ,分享學習的方法和需要注意的小細節,不停更新最新的教程和學習方法
(從零基礎開始到前端項目實戰教程,學習工具,職業規劃)

備注:這里要注意toFixed()函數的語法:

NumberObject.toFixed(num)

所以寫之前需要保證toFixed的對象是數字,否則會報錯

//報錯情況:
(null).toFixed(2)
(undefined).toFixed(2)
("222.333").toFixed(2)
//特殊:NaN是數字,但是無法取小數,也并不會報錯
(NaN).toFixed(2)  //"NaN"
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

自贡市| 麻阳| 富阳市| 武清区| 浮山县| 滁州市| 双鸭山市| 宁晋县| 静安区| 芷江| 叙永县| 化德县| 新绛县| 汉中市| 金乡县| 惠州市| 商洛市| 右玉县| 诸城市| 大新县| 保山市| 木里| 遵化市| 日照市| 河池市| 潼关县| 广宗县| 台南市| 延川县| 麻江县| 钟祥市| 天长市| 任丘市| 高陵县| 太湖县| 霸州市| 百色市| 翼城县| 宝鸡市| 霍州市| 郴州市|