最簡單有效的數字金額大寫轉換

2021-09-23 13:23:02 字數 928 閱讀 7782

/** 數字金額大寫轉換(可以處理整數,小數,負數) */

function smalltobig(n) {

var fraction = ["角", "分"];

var digit = ["零", "壹", "貳", "叄", "肆", "伍", "陸", "柒", "捌", "玖"];

var unit = [["元", "萬", "億"], ["", "拾", "佰", "仟"]];

var head = n < 0 ? "欠" : "";

n = math.abs(n);

var s = "";

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

s += (

digit[math.floor(n * 10 * math.pow(10, i)) % 10] + fraction[i]

).replace(/零./, "");

s = s || "整";

n = math.floor(n);

for (var i = 0; i < unit[0].length && n > 0; i++) {

var p = "";

for (var j = 0; j < unit[1].length && n > 0; j++) {

p = digit[n % 10] + unit[1][j] + p;

n = math.floor(n / 10);

s = p.replace(/(零.)*零$/, "").replace(/^$/, "零") + unit[0][i] + s;

return (

head +

s.replace(/(零.)*零元/, "元")

.replace(/(零.)+/g, "零")

.replace(/^整$/, "零元整")

JAVA數字大寫金額轉換

public class moneyutil private static final string iunit private static final string dunit public static string tochinese string str else if str.index...

java 數字金額大寫轉換

數字金額大寫轉換,思想先寫個完整的然後將如零拾替換成零 要用到正規表示式 public static string digituppercase double n string digit string unit string head n 0 負 n math.abs n string s for...

金額數字大寫轉換

by linsl 2008 07 23 轉化格式 function numtoch num var num ch new array 零 壹 貳 叄 肆 伍 陸 柒 捌 玖 var z unit new array 元 拾 佰 仟 萬 拾 佰 仟 億 拾 佰 仟 var point new arra...