將數字轉換成大寫的人民幣表達式的js函數
來源:易賢網 閱讀:950 次 日期:2014-10-15 15:35:37
溫馨提示:易賢網小編為您整理了“將數字轉換成大寫的人民幣表達式的js函數”,方便廣大網友查閱!

將數字轉換成大寫的人民幣,方法有很多,本例介紹的是使用js來完成的,看看下面的實現代碼

function changeNumMoneyToChinese(money) {

var cnNums = new Array("零", "壹", "貳", "叁", "肆", "伍", "陸", "柒", "捌", "玖"); //漢字的數字

var cnIntRadice = new Array("", "拾", "佰", "仟"); //基本單位

var cnIntUnits = new Array("", "萬", "億", "兆"); //對應整數部分擴展單位

var cnDecUnits = new Array("角", "分", "毫", "厘"); //對應小數部分單位

var cnInteger = "整"; //整數金額時后面跟的字符

var cnIntLast = "元"; //整型完以后的單位

var maxNum = 999999999999999.9999; //最大處理的數字

var IntegerNum; //金額整數部分

var DecimalNum; //金額小數部分

var ChineseStr = ""; //輸出的中文金額字符串

var parts; //分離金額后用的數組,預定義

if (money == "") {

return "";

}

money = parseFloat(money);

if (money >= maxNum) {

alert('超出最大處理數字');

return "";

}

if (money == 0) {

ChineseStr = cnNums[0] + cnIntLast + cnInteger;

return ChineseStr;

}

money = money.toString(); //轉換為字符串

if (money.indexOf(".") == -1) {

IntegerNum = money;

DecimalNum = '';

} else {

parts = money.split(".");

IntegerNum = parts[0];

DecimalNum = parts[1].substr(0, 4);

}

if (parseInt(IntegerNum, 10) > 0) { //獲取整型部分轉換

var zeroCount = 0;

var IntLen = IntegerNum.length;

for (var i = 0; i < IntLen; i++) {

var n = IntegerNum.substr(i, 1);

var p = IntLen - i - 1;

var q = p / 4;

var m = p % 4;

if (n == "0") {

zeroCount++;

} else {

if (zeroCount > 0) {

ChineseStr += cnNums[0];

}

zeroCount = 0; //歸零

ChineseStr += cnNums[parseInt(n)] + cnIntRadice[m];

}

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

ChineseStr += cnIntUnits[q];

}

}

ChineseStr += cnIntLast;

//整型部分處理完畢

}

if (DecimalNum != '') { //小數部分

var decLen = DecimalNum.length;

for (var i = 0; i < decLen; i++) {

var n = DecimalNum.substr(i, 1);

if (n != '0') {

ChineseStr += cnNums[Number(n)] + cnDecUnits[i];

}

}

}

if (ChineseStr == '') {

ChineseStr += cnNums[0] + cnIntLast + cnInteger;

} else if (DecimalNum == '') {

ChineseStr += cnInteger;

}

return ChineseStr;

}

更多信息請查看IT技術專欄

更多信息請查看腳本欄目
由于各方面情況的不斷調整與變化,易賢網提供的所有考試信息和咨詢回復僅供參考,敬請考生以權威部門公布的正式信息和咨詢為準!

2026國考·省考課程試聽報名

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
云南網警備案專用圖標
聯系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網
云南網警報警專用圖標
未满十八18勿进黄网站免费看