導航:首頁 > 數字貨幣 > js將數字格式化成貨幣

js將數字格式化成貨幣

發布時間:2023-05-28 05:16:34

Ⅰ js怎麼把數字金額轉換成中文大寫金額

http://link.fobshanghai.com/rmb.htm,參考網址。
<script>

function convertCurrency(currencyDigits) {

// Constants:

var MAXIMUM_NUMBER = 99999999999.99;

// Predefine the radix characters and currency symbols for output:

var CN_ZERO = "零";

var CN_ONE = "壹";

var CN_TWO = "貳";

var CN_THREE = "叄";

var CN_FOUR = "肆";

var CN_FIVE = "伍";

var CN_SIX = "陸";

var CN_SEVEN = "柒";

var CN_EIGHT = "捌";

var CN_NINE = "玖";

var CN_TEN = "拾";

var CN_HUNDRED = "佰";

var CN_THOUSAND = "仟";

var CN_TEN_THOUSAND = "萬";

var CN_HUNDRED_MILLION = "億";

var CN_SYMBOL = "人民幣";

var CN_DOLLAR = "元";

var CN_TEN_CENT = "角";

var CN_CENT = "分";

var CN_INTEGER = "整";

// Variables:

var integral; // Represent integral part of digit number.

var decimal; // Represent decimal part of digit number.

var outputCharacters; // The output result.

var parts;

var digits, radices, bigRadices, decimals;

var zeroCount;

var i, p, d;

var quotient, molus;

// Validate input string:

currencyDigits = currencyDigits.toString();

if (currencyDigits == "") {

alert("請輸入小寫金額!");

return "";

}

if (currencyDigits.match(/[^,.\d]/) != null) {

alert("小寫金額含有無效字元!");

return "";

}

if ((currencyDigits).match(/^((\d{1,3}(,\d{3})*(.((\d{3},)*\d{1,3}))?)|(\d+(.\d+)?))$/) == null) {

alert("小寫金額的格式不正確!");

return "";

}

// Normalize the format of input digits:

currencyDigits = currencyDigits.replace(/,/g, ""); // Remove comma delimiters.

currencyDigits = currencyDigits.replace(/^0+/, ""); // Trim zeros at the beginning.

// Assert the number is not greater than the maximum number.

if (Number(currencyDigits) > MAXIMUM_NUMBER) {

alert("金額過大,應小於1000億元!");

return "";

}

// Process the coversion from currency digits to characters:

// Separate integral and decimal parts before processing coversion:

parts = currencyDigits.split(".");

if (parts.length > 1) {

integral = parts[0];

decimal = parts[1];

// Cut down rendant decimal digits that are after the second.

decimal = decimal.substr(0, 2);

}

else {

integral = parts[0];

decimal = "";

}

// Prepare the characters corresponding to the digits:

digits = new Array(CN_ZERO, CN_ONE, CN_TWO, CN_THREE, CN_FOUR, CN_FIVE, CN_SIX, CN_SEVEN, CN_EIGHT, CN_NINE);

radices = new Array("", CN_TEN, CN_HUNDRED, CN_THOUSAND);

bigRadices = new Array("", CN_TEN_THOUSAND, CN_HUNDRED_MILLION);

decimals = new Array(CN_TEN_CENT, CN_CENT);

// Start processing:

outputCharacters = "";

// Process integral part if it is larger than 0:

if (Number(integral) > 0) {

zeroCount = 0;

for (i = 0; i < integral.length; i++) {

p = integral.length - i - 1;

d = integral.substr(i, 1);

quotient = p / 4;

molus = p % 4;

if (d == "0") {

zeroCount++;

}

else {

if (zeroCount > 0)

{

outputCharacters += digits[0];

}

zeroCount = 0;

outputCharacters += digits[Number(d)] + radices[molus];

}

if (molus == 0 && zeroCount < 4) {

outputCharacters += bigRadices[quotient];

zeroCount = 0;

}

}

outputCharacters += CN_DOLLAR;

}

// Process decimal part if there is:

if (decimal != "") {

for (i = 0; i < decimal.length; i++) {

d = decimal.substr(i, 1);

if (d != "0") {

outputCharacters += digits[Number(d)] + decimals[i];

}

}

}

// Confirm and return the final output string:

if (outputCharacters == "") {

outputCharacters = CN_ZERO + CN_DOLLAR;

}

if (decimal == "") {

outputCharacters += CN_INTEGER;

}

outputCharacters = CN_SYMBOL + outputCharacters;

return outputCharacters;

}

</script>

Ⅱ JS裡面貨幣類型怎麼弄 比如我現在有200000 這個數字怎麼樣轉化為貨幣類型200.000.00

function FormatMoney(money) {
if (/[^0-9\.]/.test(money)) return '0.00';
money = money.replace(/^(\d*)$/, "$1.");
money = (money + "00").replace(/(\d*\.\d\d)\d*/, "$1");
money = money.replace(".", ",");
var re = /(\d)(\d{3},)/;
while (re.test(money)) {
money = money.replace(re, "$1,$2");
}
money = money.replace(/,(\d\d)$/, ".$1");
return '' + money.replace(/^\./, "0.");
}

Ⅲ money_format — 將數字格式化成貨幣字元串

這是總結後的知識點,希望能幫到你,數據有點多!
money_format
(PHP 4 >= 4.3.0, PHP 5, PHP 7)
money_format — 將數字格式化成貨幣字元串
說明
money_format ( string $format , float $number ) : string
money_format() 返回格式化好的 number 版本。 此函數包裝了 C 函數庫中的 strfmon(),不同之處是:此實現每次只能轉化一個數字。
參數
format
格式字元串由以下幾部分組成:
單個 % 字元
可選的標記(flags)
可選的欄位寬度
可選的,左側精度
可選的,右側精度
必選的,單個轉化字元
標記(Flags)
可選多個標記,分別是:
=f
字元:=,並緊跟一個字元(單位元組) f,用於數字填充。默認的填充字元是空格。
^
禁用分組字元(比如金額中的逗號。在本地區域設置 locale 中定義)。
+ or (
正負數字的格式。使用 +,將使用區域設置(locale)中相當於 + 和 - 的符號。 如果使用 (,負數將被圓括弧圍繞。不設置的話,默認為 +。
!
不輸出貨幣符號(比如 ¥)。
-
有這個符號的時候,將使欄位左對齊(填充到右邊),默認是相反的,是右對齊的(填充到左邊)。

Ⅳ 【VUE】js將number數字轉換為金額格式,類似於10000=10,000.00

比如請求數據返回金額為10000,然後我們給做個金額格式分段;

1、我們首先模擬個數據~vue:data(  ){ reutrn:{ num:10000  } }              原生js:var num=10000;

2、在項目中創建一個.js文件寫入js方法,如下;

3、js使用可以直接寫在方法外    

4、vue可以將.js文件引入main文件,或者在本頁面引入

5、寫入要轉換的變數值

Ⅳ Numeral.js

Numeral.js是一款用於格式化和操作數字的JavaScript庫。

npm install numeral

在需要用到的地方聲明即可

var numeral = require('numeral');

將各種其他格式轉化為數字

語法示例:

Input為不同的格式,value為轉化的數字

數字可以格式化成貨幣、百分比、時間,甚至是帶有小數點、千分位和告鄭縮寫。

語法示例:

設置默認格式,以便可以使純友鬧用不帶字元串的.format()。默認格式為做罩「0,0」

Ⅵ js 金額分格式轉換成元格式

可以通過縮放來進行分到元的轉換,同時使用正則對處理後的數字進行千分位格式化

  1. num=num*0.01;//分到元

  2. num+='';//轉成字元串

  3. reg=num.indexOf('.') >-1 ?/(d{1,3})(?=(?:d{3})+.)/g:/(d{1,3})(?=(?:d{3})+$)/g;//確定使用有哪個正則

  4. num=num.replace(reg, '$1,');//千分位格式化


經過上述4步,即可完成分到元的轉換,並且有千分位的格式化

Ⅶ 【js】金錢格式化(每三位逗號分隔)的方法

我們在日常開發中後台返回的金錢常常只是一個數字,比如12345.67,這時需要做一下轉化,把它變成12,345.67這樣的金錢格式,我想到的方法如下:

整體思路就是先拿到數據後,先把它當成字元串處理,通過小數點,分開整數和小數部分,然後處理整數部分,如果整數部分小於等於3位,直接用就可以啦,如果大於3位,那麼就把這個整數最後3位先存起來且前面加上逗號,然後割掉這個整數的這3位,繼續重復這個判斷,每次截取的後三位都拼到上一次截取結果的前面,直到整數部分小於等於三位了,就可以和存儲的結果拼在一起,再拼上小數部分就可以啦。
希望大家能有更好的方法~

Ⅷ 求助:如何在JS中將一個金額格式化

function toThousands( num ) {
var v = num + '', arr = v.split( '.' );
return num == 0 && '0.00' || ( typeof ( num ) === 'number' || typeof ( num ) === 'string' ) && !isNaN( num - parseFloat( num ) )
&& ( arr[ 0 ].replace( /(\d)(?=(?:\d{3})+$)/g, '$1,' ) + '.' + ( arr.length === 1 && '00'
|| arr.length === 2 && ( ( parseFloat( '0.' + arr[ 1 ] ).toFixed( 2 ) ).toString().split( '.' )[ 1 ] ) ) ) || num;
}
此方法,可以保留兩位小數,不會出現科學計數法的尷尬!

Ⅸ 求一個JS正則表達式用於格式化英文中的金額形式。如:25663333444,格式化後為:25,663,333,444

var s = '12345237987584564656,000.00';
var d=s.replace(/(\d)(?=(\d{3})+(?!\d))/g, "$1,")

Ⅹ javascript 中對money類型的數據操作

這是一個很常用的 js 技術,因為覺得比較典型,可能很多新手都會遇到此問題,所以整迅哪州理了一下,以備新手查閱。

1、round 方法
作用:返回與給出的數值表達式最接近的整數。
語法:Math.round(number) ,必選項 number 參數是要舍入到最接近整數的值。
說明:如果 number 的小數部分大緩賀於等於 0.5,返回值是大於 number 的最小整數。否則,round 返回小於等於 number 的最大整數。

2、在 Javascript 1.5 (IE5.5+,NS6+ 以上版本支持)中,新增了2個專門用於貨幣畝蔽流通的函數,Number.toFixed(x) 和 Number.toPrecision(x)。

Number.toFixed(x) 是將指定數字截取小數點後 x 位, Number.toPrecision(x) 是將整個數字截取指定(x)長度。注意,一個是計算小數點後的長度,一個是計算整個數字的長度 。

例如:
<script type="text/javascript">
var aa = 2.3362;
document.write(aa.toFixed(1)); // 2.3
document.write(aa.toFixed(2)); // 2.34
document.write(aa.toPrecision(2)); // 2.3
document.write(aa.toPrecision(3)); // 2.34
document.write(Math.round(aa * 10) / 10); // 2.3
document.write(Math.round(aa * 100) / 100); // 2.34
</script>

由於是新增函數,所以要考慮瀏覽器支持問題。

閱讀全文

與js將數字格式化成貨幣相關的資料

熱點內容
比特幣每秒交易多少次 瀏覽:355
虛擬貨幣高風險 瀏覽:733
2019比特幣合法嗎 瀏覽:196
數字貨幣預計什麼時候上架 瀏覽:860
港股的區塊鏈概念股 瀏覽:167
ace幣區塊鏈 瀏覽:536
數字貨幣超過巴菲特是誰 瀏覽:70
gucs數字貨幣今日價格 瀏覽:305
PS42k18虛擬貨幣到賬 瀏覽:857
虎爾比特幣 瀏覽:390
紅牛礦池怎麼激活 瀏覽:535
btc合約如何套利 瀏覽:491
以太坊打開埠 瀏覽:250
數字貨幣紙質貨幣還能用嗎 瀏覽:334
中國禁止比特幣的影響 瀏覽:606
如何發起比特幣交易 瀏覽:674
在哪下比特幣勒索補丁 瀏覽:885
螞蟻礦機額定算力什麼意思 瀏覽:909
通過知道創宇審核的虛擬貨幣 瀏覽:83
gcc虛擬貨幣是什麼軟體 瀏覽:546