JS toFixed之四舍五入

toFixed,我經(jīng)常用來四舍五入保留兩位小數(shù)诀拭,但是到今天我才真正意識到toFixed不是真的四舍五入迁筛,他是四舍六入!

比如

0.984.toFixed(2)
// 字符串0.98
0.985.toFixed(2)
// 神奇的打印的是字符串0.98耕挨,而不是我們想要的0.99
0.986.toFixed(2)
// 字符串0.99

我翻閱了好多技術(shù)社區(qū)细卧,比如某否,某金筒占,某乎贪庙,某書,大部分回答都是使用Math.round翰苫,乘以100止邮,再除以100,就試了一下

Math.round(0.986 * 100) / 100
// 0.99
Math.round(0.985 * 100) / 100
// 0.99
Math.round(0.984 * 100) / 100
// 0.98
Math.round(0.945 * 100) / 100
// 0.95
Math.round(0.905 * 100) / 100
// 0.91

ok奏窑,完美导披!
但是,真的完美嗎埃唯?然后我掏出0.145

Math.round(0.145 * 100) / 100
// 0.14

天啊這是怎么了撩匕?!我都不敢相信自己的眼睛墨叛,三觀盡毀止毕!
找了很多方法,大部分都是用Math.round(num * 100) / 100漠趁,
我再也不相信任何人了扁凛,所以我就自己寫了一個(gè)四舍五入,希望有用棚潦,如果有問題請斧正

Number.prototype._toFixed = Number.prototype.toFixed
Number.prototype.toFixed = function (n = 2) {
    let temp = (this + '').split('.')
    if (!temp[1] || temp[1].length <= n) {
        return this._toFixed(n)
    } else {
        let nlast = temp[1].substring(n, n + 1)
        temp[1] = temp[1].substring(0, n) + (nlast >= 5 ? '9' : '1')
        return Number([temp[0], temp[1]].join('.'))._toFixed(n)
    }
}
0.985.toFixed(2)
// 0.99
0.145.toFixed(2)
// 0.15
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末令漂,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌叠必,老刑警劉巖荚孵,帶你破解...
    沈念sama閱讀 219,366評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異纬朝,居然都是意外死亡收叶,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,521評論 3 395
  • 文/潘曉璐 我一進(jìn)店門共苛,熙熙樓的掌柜王于貴愁眉苦臉地迎上來判没,“玉大人,你說我怎么就攤上這事隅茎〕畏澹” “怎么了?”我有些...
    開封第一講書人閱讀 165,689評論 0 356
  • 文/不壞的土叔 我叫張陵辟犀,是天一觀的道長俏竞。 經(jīng)常有香客問我,道長堂竟,這世上最難降的妖魔是什么魂毁? 我笑而不...
    開封第一講書人閱讀 58,925評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮出嘹,結(jié)果婚禮上席楚,老公的妹妹穿的比我還像新娘。我一直安慰自己税稼,他們只是感情好烦秩,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,942評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著郎仆,像睡著了一般闻镶。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上丸升,一...
    開封第一講書人閱讀 51,727評論 1 305
  • 那天,我揣著相機(jī)與錄音牺氨,去河邊找鬼狡耻。 笑死,一個(gè)胖子當(dāng)著我的面吹牛猴凹,可吹牛的內(nèi)容都是我干的夷狰。 我是一名探鬼主播,決...
    沈念sama閱讀 40,447評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼郊霎,長吁一口氣:“原來是場噩夢啊……” “哼沼头!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,349評論 0 276
  • 序言:老撾萬榮一對情侶失蹤进倍,失蹤者是張志新(化名)和其女友劉穎土至,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體猾昆,經(jīng)...
    沈念sama閱讀 45,820評論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡陶因,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,990評論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了垂蜗。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片楷扬。...
    茶點(diǎn)故事閱讀 40,127評論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖贴见,靈堂內(nèi)的尸體忽然破棺而出烘苹,到底是詐尸還是另有隱情,我是刑警寧澤片部,帶...
    沈念sama閱讀 35,812評論 5 346
  • 正文 年R本政府宣布镣衡,位于F島的核電站,受9級特大地震影響吞琐,放射性物質(zhì)發(fā)生泄漏捆探。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,471評論 3 331
  • 文/蒙蒙 一站粟、第九天 我趴在偏房一處隱蔽的房頂上張望黍图。 院中可真熱鬧,春花似錦奴烙、人聲如沸助被。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,017評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽揩环。三九已至,卻和暖如春幅虑,著一層夾襖步出監(jiān)牢的瞬間丰滑,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,142評論 1 272
  • 我被黑心中介騙來泰國打工倒庵, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留褒墨,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,388評論 3 373
  • 正文 我出身青樓擎宝,卻偏偏與公主長得像郁妈,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子绍申,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,066評論 2 355

推薦閱讀更多精彩內(nèi)容