<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          JavaScript中常用的數(shù)字取整方法,趕緊收藏起來(lái)!

          共 2602字,需瀏覽 6分鐘

           ·

          2022-06-17 15:44

          點(diǎn)擊上方藍(lán)字關(guān)注我們




          在 JavaScript 實(shí)際開(kāi)發(fā)過(guò)程中,經(jīng)常會(huì)遇到數(shù)字取整的問(wèn)題。本篇文章收集了一些方法,有需要的朋友趕緊收藏起來(lái)吧!



          01
          PART
          直接取整


          直接取整,顧名思義只取整數(shù)部分,小數(shù)部分就直接舍去。


          (1)parseInt()


          parseInt() 函數(shù)解析一個(gè)字符串參數(shù),并返回一個(gè)指定基數(shù)的整數(shù)。


          parseInt("2022abc"); //2022parseInt(""); // NaNparseInt("0xC"); // 12  十六進(jìn)制parseInt(22.06); // 22parseInt(-22.06); // 22parseInt("030"); // 30 八進(jìn)制


          (2) Math.trunc()


          Math.trunc() 方法會(huì)將數(shù)字的小數(shù)部分去掉,只保留整數(shù)部分。


          Math.trunc(10.15); // 10Math.trunc(35.13); // 35Math.trunc(0.123); // 0Math.trunc(-0.123); // -0Math.trunc("-3.1415"); // -3Math.trunc(NaN); // NaNMath.trunc("foo"); // NaNMath.trunc(); // NaN



          02
          PART
          快速取整


          除了以上兩個(gè)直接取整方法,我們也可以運(yùn)用按位運(yùn)算符來(lái)實(shí)現(xiàn)數(shù)字取證。所有的按位運(yùn)算符都是以帶符號(hào)的 32 位整數(shù)進(jìn)行。使用它們可以將浮點(diǎn)型轉(zhuǎn)換為整數(shù)。但這里面也存在一個(gè)問(wèn)題,取整的數(shù)字有一個(gè)安全范圍 ±2^31-1,即2147483647


          (1)~~number


          雙波浪線 ~~ 操作符也被稱為雙按位非操作符。通常,可以用它來(lái)代替 Math.trunc() 方法。


          ~~35.12 // 35~~3.33333 // 3~~5 // 5~~[] // 0~~NaN // 0~~null // 0// 異常情況~~2147483648.123 // -2147483648


          (2) number丨0


          丨(按位或)對(duì)每一對(duì)比特位執(zhí)行或(OR)操作


          35.12|0 // 35-35.12|0 // -352000000000000.15|0 // -1454759936


          (3) number^0


          ^(按位異或),對(duì)每一對(duì)比特位執(zhí)行異或(XOR)操作

          35.12^0 // 35-35.12^0 // -352000000000000.15^0 // -1454759936


          (4) number<<0


          <<(左移)操作符會(huì)將第一個(gè)操作數(shù)向左移動(dòng)指定的位置。向左被移出的位被丟棄,右側(cè)用0補(bǔ)充。


          35.12<<0 // 35-35.12<<0 // -352000000000000.15<<0 // -1454759936


          以上快速取整方法執(zhí)行很快,即便當(dāng)你執(zhí)行數(shù)百萬(wàn)這樣的操作仍然非常使用,速度明顯優(yōu)于其他方法。但這樣有一個(gè)缺點(diǎn),就是代碼的可讀性差。還要注意一個(gè)點(diǎn),當(dāng)處理一個(gè)特別大的數(shù)字時(shí),會(huì)有一些異常情況。因此,在使用的時(shí)候要明確檢查輸入數(shù)值的范圍。



          03
          PART
          舍入舍去取整


          當(dāng)然以上直接去除小數(shù)點(diǎn)有時(shí)候還不滿足我們的實(shí)際開(kāi)發(fā)需求,有時(shí)候需要對(duì)小數(shù)進(jìn)行四舍五入。在JavaScript中,Math對(duì)象提供了以下三種方法。


          (1)四舍五入


          Math.round() 是將數(shù)值四舍五入為最相近的整數(shù)。


          Math.round(3.1) // 3Math.round(5.5) // 6Math.round(5.9) // 6Math.round(-3.1// -3Math.round(-5.5// -5Math.round(-5.9// -6


          (2)向下取整


          Math.floor() 是取向下最近的整數(shù)。


          Math.floor(3.1// 3Math.floor(5.5// 5Math.floor(5.9// 5Math.floor(-3.1// -4Math.floor(-5.5// -6Math.floor(-5.9// -6



          (3)向上取整


          Math.ceil() 是取向上最近的整數(shù)。


          Math.ceil(3.1) // 4Math.ceil(5.5// 6Math.ceil(5.9// 6Math.ceil(-3.1// -3Math.ceil(-5.5// -5Math.ceil(-5.9// -5


          結(jié)尾


          以上就是介紹JavaScript中常用的數(shù)字取整方法的內(nèi)容,如果覺(jué)得本篇文章對(duì)你有所幫助,希望大家伙兒能夠多多支持,點(diǎn)個(gè)關(guān)注、收藏!


          這里是w3cschool編程獅,關(guān)注我們,閱讀更多的IT資訊及技術(shù)干貨~

          課程推薦

          課程:《JavaScript 入門課程》

          課程介紹:本課程將帶你全面掌握最實(shí)用的JavaScript知識(shí)點(diǎn);能夠精準(zhǔn)輸出JavaScript代碼;制作出有好的動(dòng)態(tài)網(wǎng)頁(yè)等。

          課程特點(diǎn):本課程不同于傳統(tǒng)的教學(xué)課程,以微課圖文形式的課程呈現(xiàn)。

          1. 160+知識(shí)點(diǎn)圖文呈現(xiàn),為理解服務(wù);

          2. 160+隨堂練習(xí),踐行在“做”中“學(xué)”;

          3. 7次小節(jié)測(cè)驗(yàn),講練結(jié)合。

          課程評(píng)價(jià):

          學(xué)習(xí)方式:掃碼 ↓ 立即前往課程界面~

          轉(zhuǎn)發(fā),點(diǎn)贊,在看,安排一下?
          瀏覽 191
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  中文字幕在线无码视频 | 亚洲成人在线网 | 久久综合久久鬼色 | 无码在线内射 | 成人簧片在线浏览观看 |