日本阿v片在线播放免费,成人国产片视频在线观看,日韩黄片毛片在线观看,一区亚洲电影,琪琪秋霞午夜av影视在线,中文字幕在线视频不卡,最新大伊香蕉精品视频在线,亚洲AV无码日韩一区二区乱

      JS--普通數(shù)字格式與會計金額格式之間的轉換

      2019-10-24    seo達人

      普通數(shù)字轉會計金額格式(保留兩位小數(shù))

      我們可以用數(shù)字的toLocaleString()方法將普通數(shù)字轉為會計金額格式,但是這種方式無法保留兩位小數(shù)(四舍五入),如果是整數(shù)或者小數(shù)長度只有一位的時候無法自動補0



      例如:





      思路:

      利用toLocaleString()以及toFixed()先對數(shù)字進行一個轉換得到最多保留了2位小數(shù)的金額,然后判斷數(shù)字是為整數(shù)還是帶有小數(shù),如果帶有小數(shù)則進行切割,判斷小數(shù)長度為1時自動補0



      // 普通數(shù)字轉會計金額格式 第一種

          function toThousandsFormates(num) {

              // 判斷傳進來的數(shù)字是否為非空數(shù)字

             if (!isNaN(parseFloat(num))) {

                  var reg = /./g

                  var newNum = Number(Number(num).toFixed(2)).toLocaleString()

                  // 判斷轉換后的數(shù)字是否帶有小數(shù)

                  if (reg.test(newNum)) {

                      var numArr = newNum.split('.')

                      // 判斷小數(shù)點后數(shù)字長度為1,則自動補0

                      numArr[1] = numArr[1].length === 1 ? numArr[1] + '0' : numArr[1]

                      return numArr.join('.')

                  } else {

                      // 整數(shù)直接在后面補上0.00

                      return newNum + '.00'

                  }



              } else {

                  return ''

              }

          }

          console.log(toThousandsFormates('0')); // 0.00

          console.log(toThousandsFormates('')); // ''

          console.log(toThousandsFormates(966)); // 966.00

          console.log(toThousandsFormates(966.3)); // 966.30

          console.log(toThousandsFormates(9669228.55)); // 9,669,228.55

          console.log(toThousandsFormates(96566.56954)); // 96,566.57



      經(jīng)過查閱資料后,發(fā)現(xiàn)toLocaleString()它里面自帶屬性可以檢查到最少保留了幾位小數(shù),不夠自動補0,這樣我們上面的代碼其實可以更加簡單,如下:

      // 普通數(shù)字轉會計金額格式 第二種

      function toThousandsFormates2(num) {

          // 判斷傳進來的數(shù)字是否為非空數(shù)字

          if (!isNaN(parseFloat(num))) {

              var newNum = Number(Number(num).toFixed(2)).toLocaleString('zh', { minimumFractionDigits: 2 })

              return newNum



          } else {

              return ''

          }

      }



      console.log(toThousandsFormates2('0')); // 0.00

      console.log(toThousandsFormates2('')); // ''

      console.log(toThousandsFormates2(966)); // 966.00

      console.log(toThousandsFormates2(966.3)); // 966.30

      console.log(toThousandsFormates2(9669228.55)); // 9,669,228.55

      console.log(toThousandsFormates2(96566.56954)); // 96,566.57



      // 結果一模一樣



      會計金額格式轉普通數(shù)字(利用正則)

      // 會計金額格式轉為普通數(shù)字

          function rMoney(num) {

              return parseFloat(num.replace(/[^\d\.-]/g, ''))

          }

          console.log(rMoney('96,566.57')); // 96566.57

          console.log(rMoney('966.30')); // 966.3

          console.log(rMoney('9,669,228.55')); // 9669228.55

      藍藍設計m.jjddy.com )是一家專注而深入的界面設計公司,為期望卓越的國內(nèi)外企業(yè)提供卓越的UI界面設計、BS界面設計  cs界面設計  ipad界面設計  包裝設計  圖標定制  用戶體驗 、交互設計、 網(wǎng)站建設 平面設計服務

      日歷

      鏈接

      個人資料

      藍藍設計的小編 http://m.jjddy.com

      存檔