摘要:中沒有浮點數這種東西,但是你會發現這樣一個問題,如下從數學角度來看,你會覺得不可思議,這是為什么這就跟浮點數有關。
在JavaScript只有一種數值類型number,它包括整數和帶小數的十進制數(這里的整數有點特殊,指的是沒有小數的十進制數,所以1.0等同于整數1)。
一、語法
1、js中的小數,多余的零可以省略
let a = .1; // 默認為0.1 let b = 1.; // 默認為1 let c = 1.000; // 默認為1
注意:小數理的的小數點.很重要哦,一定要引起重視,待會再探究。
2、toFixed()方法
42.toFixed(2); // SynataxError 語法錯誤 (42).toFixed(2); // 42.00 0.42.toFixed(2); // 0.42 42..toFixed(2); // 42.00
前面有提到小數的小數點很重要,對于.運算符,它是一個有效的數字字符,會被優先識別為數字常量的一部分,然后才是對象屬性訪問運算符。所以第一條語句會被認為是語法錯誤。
關于toFixed()方法,其實它是有誤差,減少誤差可參考 鏈接描述。
1.335.toFixed(2); // 1.33 有誤差 0.155.toFixed(2); // 0.15 有誤差 //這并不是理想狀態下的四舍五入,還跟瀏覽器有關,IE瀏覽器的精度比其他瀏覽器高, //有人說toFixed()是四舍六入五成雙,至于到底是什么樣的,我也不太清楚。。。 //但是,<=4的和>=6的小數都沒有問題,最大的問題在5,這個分水嶺。
還有一種方法,Math.round()方法是四舍五入到整數的,以保留兩位小數為例,假設一個數為n,求值為(Math.round(n * 100)) / 100 (這種方式是偶然想到的,網上并沒有相關的例子,并不知道該方法是否存有缺陷,如有問題,歡迎指出!)
二、浮點數
剛開始接觸————浮點數,是學C語言的時候,那時候的我,只是簡單以為浮點數就是多位小數,而雙精度就是小數點后保留兩位小數,但現在我不再把浮點數想得如此簡單了,里面有大學問。
js中沒有浮點數這種東西,但是你會發現這樣一個問題,如下:
0.1 + 0.2 === 0.3; // false 0.1 + 0.2 == 0.3; // false
從數學角度來看,你會覺得不可思議,這是為什么?這就跟浮點數有關。
這是因為計算機中存儲數據并不簡單,計算機硬件中沒有小數這個概念,而且它只能以二進制的形式存儲數據,整數還好,整數能正常的運算,但一遇到小數,就會出現很多無法理解的問題。
那什么是浮點數呢,到現在我也只能理解皮毛,根據根據國際標準IEEE 754,任意一個浮點數都可以寫成如下形式:
遇到小數運算時,先轉化為二進制,運算后,再轉化成十進制。
其中,有些小數并不是能準確地化成二進制數,但是一個數值的存儲空間是有限制的,這時候就會舍棄,就存在著誤差,所以小數相加會存在誤差。
要想解決誤差問題,放大10*兩者中小數點后位數最多的位數n(可以比n大),如下
0.1 + 0.2222 // 結果為0.32220000000000004 ,有誤差 // 計算 0.1 + 0.2222 的值 0.1小數點后1位,0.2222小數點后4位,因此最少要放大10^4倍 (0.1 * 10000 + 0.2222 * 10000) / 10000 // 結果為0.3222
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/101318.html
摘要:能源行業數字化轉型方向與人才培養大數據微軟雅黑全球能源行業數字化轉型的使命是實現敏捷能源。微軟雅黑油氣行業數字化轉型聚焦生產服務技術新業務運營人才生態七大重點方向,結合企業發展實際,挖掘數據驅動價值增值的關鍵點,布局未來。 隨著中國能源結構持續大幅優化,清潔低碳化進程不斷加快,中國市場蘊含巨大機遇,國內對能源行業的人才需求...
摘要:本文為喜茶喜茶互聯網事業部總經理陳霈霖老師分享的數字化三支柱傳統企業數字化轉型的眾妙之門案例實錄。在我講述數字化三支柱之前,我們不妨先來看看喜茶誕生的故事。 showImg(https://segmentfault.com/img/bVblRz3?w=640&h=427); 喜茶憑借「喜茶GO」小程序躋身第七屆全球軟件案例研究峰會(簡稱:TOP100summit),為100個技術案例中...
摘要:中國數字產業正在迎來發展黃金期,其最大特點是信息和通信技術和數字基礎設施將被各行各業廣泛應用,數字技術的創新將給所有產業帶來進一步的繁榮,同時能夠驅動數字經濟和實體經濟進一步增長。數字產業的繁榮是新時期經濟發展的重要基石。習近平總書記在今年舉行的全國網絡安全和信息化工作會議上明確指出,要發展數字經濟,加快推動數字產業化,這一表述不僅引起強烈共鳴,也預示著中國數字產業發展迎來重大機遇。中國數字...
摘要:既有還手寫掛號單的落后醫院,也有已經利用大數據技術介入診療過程的高新醫院。大數據,開啟醫院智能之路醫院在前兩個階段的數字化轉型,主要強調數據的采集與連通。總體來看,當前中國醫療行業的數字化轉型仍然以醫院的數字化轉型居多。近年來,人工智能、區塊鏈、大數據、云計算等新IT技術的迅速發展,不斷推進各行各業實現數字化轉型。金融業、制造業、零售業……紛紛依托數字化實現行業變革與業務變遷。相對于其他行業...
摘要:一引言華為數字化轉型的邏輯和方法,看起來似乎并不非常復雜。華為在年提出實現全聯接的智能華為,成為行業標桿的數字化轉型目標。但是,華為的數字化轉型之道真的好學嗎其實不然。華為真正提出數字化轉型,是在年。一、引言華為數字化轉型的邏輯和方法,看起來似乎并不非常復雜。筆者將《華為.數字化轉型必修課》課程的主要內容,概括為一個愿景、三大目標、四個基礎、五大內容、三大要求、六大案例,用下圖來表示:?一個...
閱讀 2628·2021-11-19 09:56
閱讀 874·2021-09-24 10:25
閱讀 1632·2021-09-09 09:34
閱讀 2195·2021-09-09 09:33
閱讀 1052·2019-08-30 15:54
閱讀 541·2019-08-29 18:33
閱讀 1264·2019-08-29 17:19
閱讀 505·2019-08-29 14:19