1. 程式人生 > >js 實現數值的千分位及儲存小數方法

js 實現數值的千分位及儲存小數方法

/**
        * 將數值四捨五入後格式化.
        *
        * @param num 數值(Number或者String)
        * @param cent 要保留的小數位(Number)
        * @param isThousand 是否需要千分位 0:不需要,1:需要(數值型別);
        * @return 格式的字串,如'1,234,567.45'
        * @type String
        */
      function formatNumber(num,cent,isThousand) {
        num = num.toString().replace(/\$|\,/g,'');

        // 檢查傳入數值為數值型別
          if(isNaN(num))
            num = "0";

        // 獲取符號(正/負數)
        sign = (num == (num = Math.abs(num)));

        num = Math.floor(num*Math.pow(10,cent)+0.50000000001);  // 把指定的小數位先轉換成整數.多餘的小數位四捨五入
        cents = num%Math.pow(10,cent);              // 求出小數位數值
        num = Math.floor(num/Math.pow(10,cent)).toString();   // 求出整數位數值
        cents = cents.toString();               // 把小數位轉換成字串,以便求小數位長度

        // 補足小數位到指定的位數
        while(cents.length<cent)
          cents = "0" + cents;

        if(isThousand) {
          // 對整數部分進行千分位格式化.
          for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
            num = num.substring(0,num.length-(4*i+3))+','+ num.substring(num.length-(4*i+3));
        }

        if (cent > 0)
          return (((sign)?'':'-') + num + '.' + cents);
        else
          return (((sign)?'':'-') + num);
      }

相關推薦

js 實現數值儲存小數方法

/** * 將數值四捨五入後格式化. * * @param num 數值(Number或者String) * @param cent 要保留的小數位(Number) * @param isTho

js 實現數值四捨五入儲存小數方法

/** * 將數值四捨五入後千分位格式化. * * @param num 數值(Number或者String) * @param cent 要保留的小數位(Number) * @param is

演算法練習02 實現數字分割

題目(2018-11-18) 輸入一個數字,將數字按照用逗號分隔,例如輸入1234.56,結果是1,234.56 實現 關鍵點是,這種分隔方法是從右至左的分隔,用普通的slice方法是從左至右的分隔,例如: 12345正確的結果是12, 345,而用普通的slice方法結

JS 數字格式相互轉換

/**  * 數字格式轉換成千分位  *@param{Object}num  */ function commafy(num){    if((num+"").Trim()==""){       return"";    }    if(isNaN(num)){    

JavaScript數值格式化的方法和效能

瞎掰的前提 前端嘛,經常處理數值和時間。 所以數值和時間的格式化少不了。 最近一直在面試前端, 就出了一個如何給數值新增千分位的面試題。 至於答案,我一直都有一種標準, 一是基於你現有的知識可以實現, 二是超出你知識。 有人說, 不就一個千分位, 分分鐘解決你, 正則萬歲。 沒錯, 正則很帥, 那麼效能呢?

JS實現

匹配 開始 urn tar 追加 log orm div 內容 方法一:正則實現 function format (num) { var reg=/\d{1,3}(?=(\d{3})+$)/g; return (num + ‘‘).replace

實現一個js指令碼,要求做到將數字轉化為表示如:10000 轉化為10,000

請實現一個js指令碼,要求做到將數字轉化為千分位表示 如: 10000  ---->   10,00010000121213   ---->   10,000,121,213 今天無意中看到這道題目,想了4種解決方案,和大家分享一下: //法一 functio

Java中數值較大的double型別轉換為字串時會用科學計數法不使用顯示的解決辦法

java.text.NumberFormat nf = java.text.NumberFormat.getInstance(); // 不使用千分位,即展示為11672283.234,而不是11,672,283.234 nf.setGroupingUsed(false); // 設

jq實現的轉換

一、千分位轉換位整數 var sum = '2,034,300';var x = sum.split(",");var plan_sum = parseFloat(x.join(""));輸出的結果就是“2034300”; 二、整數轉換成千分位 var TextBox8_all = "12340400"

Js格式化金額數字的方法

應用場景:在比較大小的時候,金額的千分位格式需要去掉,才能比較大小! 1.新增千分位 function fmoney(s, n) { n = n > 0 && n < = 20 ? n : 2; s =

js賦值給angularjs ng-model 資料的格式

<div ng-controller="myController"> <input type="text" onblur="thousands(this)" onfocus="focusSelect(this)" ng-model="myValue"> </

JS-滑鼠移出input,保留兩小數且新增分隔符

程式碼如下: 滑鼠移出input後保留兩位小數,新增千分位分隔符<input class="credit" type="text" value="0.00"/> <script type="text/javascript"> //千分位的分隔符 function t

Ionic2建立一個自定義pipe實現

1、在src目錄下建立一個pipe目錄用於存放自定義pipe,然後建立一個pipe |--src |--pipe *****.ts 2、在ts檔案裡面寫pipe的邏輯 import { Pipe, PipeTransform }

js加逗號

code function toThousands(num) { var numArr = num.split('.'); num = numArr[0]; var result = ''; while (num.length > 3) { result = ',' + num.slice(-3) +

js 數字格式化(,保留幾小數,四捨五入)

function formatNumber(num,cent,isThousand) { num = num.toString().replace(/\$|\,/g,'');

JS 新增 與 去掉

function commafyback(num){       var x = num.split(',');       return parseFloat(x.join(""));}     function commafy(num) {      num = num.

JS實現數字符格式化方法

/** * * @param num * @param precision * @param separator * @returns {*} *======================================================= *

使用js讓數字的用,分隔

今天有一個需求是需要把數字轉換成千位用,分隔的字串,並保留兩個小數點 方法 <script> var a = 222122122.6754; var b = a.toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, '$1,');

c++ 正則實現 分割

stream sstream clas pla bsp bre att nbsp class 1 #include <iostream> 2 #include <string> 3 #include <sstream>

JS格式化方法,以及多種方法性能比較

das 表達式 比較 wid asc 格式化 table 每次 測試結果 方法一字符串版 function toThousands(num) { var result = ‘‘, counter = 0; num = (num || 0).toSt