將rmb數(shù)字位錢數(shù)轉(zhuǎn)化為中文錢數(shù)的js函數(shù)
更新時(shí)間:2010年07月14日 23:14:49 作者:
用力將用戶輸入的錢數(shù),中文化輸出的函數(shù)代碼,需要的朋友可以參考下。
效果圖:

效果演示:
[Ctrl+A 全選 注:引入外部Js需再刷新一下頁(yè)面才能執(zhí)行]
核心代碼:
function ChangeRMBToCH(Num)
{
for(i=Num.length-1;i>=0;i--)
{
Num = Num.replace(",","")//替換tomoney()中的“,”
Num = Num.replace(" ","")//替換tomoney()中的空格
}
Num = Num.replace("¥","")//替換掉可能出現(xiàn)的¥字符
if(isNaN(Num))
{ //驗(yàn)證輸入的字符是否為數(shù)字
alert("請(qǐng)檢查小寫金額是否正確");
return "";
}
//---字符處理完畢,開始轉(zhuǎn)換,轉(zhuǎn)換采用前后兩部分分別轉(zhuǎn)換---//
part = String(Num).split(".");
newchar = "";
//小數(shù)點(diǎn)前進(jìn)行轉(zhuǎn)化
for(i=part[0].length-1;i>=0;i--)
{
if(part[0].length > 10){ alert("位數(shù)過大,無法計(jì)算");return "";}//若數(shù)量超過拾億單位,提示
tmpnewchar = ""
perchar = part[0].charAt(i);
switch(perchar)
{
case "0": tmpnewchar="零" + tmpnewchar ;break;
case "1": tmpnewchar="壹" + tmpnewchar ;break;
case "2": tmpnewchar="貳" + tmpnewchar ;break;
case "3": tmpnewchar="叁" + tmpnewchar ;break;
case "4": tmpnewchar="肆" + tmpnewchar ;break;
case "5": tmpnewchar="伍" + tmpnewchar ;break;
case "6": tmpnewchar="陸" + tmpnewchar ;break;
case "7": tmpnewchar="柒" + tmpnewchar ;break;
case "8": tmpnewchar="捌" + tmpnewchar ;break;
case "9": tmpnewchar="玖" + tmpnewchar ;break;
}
switch(part[0].length-i-1)
{
case 0: tmpnewchar = tmpnewchar +"元" ;break;
case 1: if(perchar!=0)tmpnewchar= tmpnewchar +"拾" ;break;
case 2: if(perchar!=0)tmpnewchar= tmpnewchar +"佰" ;break;
case 3: if(perchar!=0)tmpnewchar= tmpnewchar +"仟" ;break;
case 4: tmpnewchar= tmpnewchar +"萬" ;break;
case 5: if(perchar!=0)tmpnewchar= tmpnewchar +"拾" ;break;
case 6: if(perchar!=0)tmpnewchar= tmpnewchar +"佰" ;break;
case 7: if(perchar!=0)tmpnewchar= tmpnewchar +"仟" ;break;
case 8: tmpnewchar= tmpnewchar +"億" ;break;
case 9: tmpnewchar= tmpnewchar +"拾" ;break;
}
newchar = tmpnewchar + newchar;
}
//小數(shù)點(diǎn)之后進(jìn)行轉(zhuǎn)化
if(Num.indexOf(".")!=-1)
{
if(part[1].length > 2)
{
alert("小數(shù)點(diǎn)之后只能保留兩位,系統(tǒng)將自動(dòng)截段");
part[1] = part[1].substr(0,2)
}
for(i=0;i<part[1].length;i++)
{
tmpnewchar = ""
perchar = part[1].charAt(i)
switch(perchar)
{
case "0": tmpnewchar="零" + tmpnewchar ;break;
case "1": tmpnewchar="壹" + tmpnewchar ;break;
case "2": tmpnewchar="貳" + tmpnewchar ;break;
case "3": tmpnewchar="叁" + tmpnewchar ;break;
case "4": tmpnewchar="肆" + tmpnewchar ;break;
case "5": tmpnewchar="伍" + tmpnewchar ;break;
case "6": tmpnewchar="陸" + tmpnewchar ;break;
case "7": tmpnewchar="柒" + tmpnewchar ;break;
case "8": tmpnewchar="捌" + tmpnewchar ;break;
case "9": tmpnewchar="玖" + tmpnewchar ;break;
}
if(i==0)tmpnewchar =tmpnewchar + "角";
if(i==1)tmpnewchar = tmpnewchar + "分";
newchar = newchar + tmpnewchar;
}
}
if(newchar.search("分") != -1)
{
newchar = newchar.replace("零角", "零");
}
//替換所有無用漢字
while(newchar.search("零零") != -1)
newchar = newchar.replace("零零", "零");
newchar = newchar.replace("零億", "億");
newchar = newchar.replace("億萬", "億");
newchar = newchar.replace("零萬", "萬");
newchar = newchar.replace("零元", "元");
newchar = newchar.replace("零角", "");
newchar = newchar.replace("零分", "");
if (newchar.charAt(newchar.length-1) == "元" || newchar.charAt(newchar.length-1) == "角")
newchar = newchar+"整";
return newchar;
}

效果演示:
[Ctrl+A 全選 注:引入外部Js需再刷新一下頁(yè)面才能執(zhí)行]
核心代碼:
復(fù)制代碼 代碼如下:
function ChangeRMBToCH(Num)
{
for(i=Num.length-1;i>=0;i--)
{
Num = Num.replace(",","")//替換tomoney()中的“,”
Num = Num.replace(" ","")//替換tomoney()中的空格
}
Num = Num.replace("¥","")//替換掉可能出現(xiàn)的¥字符
if(isNaN(Num))
{ //驗(yàn)證輸入的字符是否為數(shù)字
alert("請(qǐng)檢查小寫金額是否正確");
return "";
}
//---字符處理完畢,開始轉(zhuǎn)換,轉(zhuǎn)換采用前后兩部分分別轉(zhuǎn)換---//
part = String(Num).split(".");
newchar = "";
//小數(shù)點(diǎn)前進(jìn)行轉(zhuǎn)化
for(i=part[0].length-1;i>=0;i--)
{
if(part[0].length > 10){ alert("位數(shù)過大,無法計(jì)算");return "";}//若數(shù)量超過拾億單位,提示
tmpnewchar = ""
perchar = part[0].charAt(i);
switch(perchar)
{
case "0": tmpnewchar="零" + tmpnewchar ;break;
case "1": tmpnewchar="壹" + tmpnewchar ;break;
case "2": tmpnewchar="貳" + tmpnewchar ;break;
case "3": tmpnewchar="叁" + tmpnewchar ;break;
case "4": tmpnewchar="肆" + tmpnewchar ;break;
case "5": tmpnewchar="伍" + tmpnewchar ;break;
case "6": tmpnewchar="陸" + tmpnewchar ;break;
case "7": tmpnewchar="柒" + tmpnewchar ;break;
case "8": tmpnewchar="捌" + tmpnewchar ;break;
case "9": tmpnewchar="玖" + tmpnewchar ;break;
}
switch(part[0].length-i-1)
{
case 0: tmpnewchar = tmpnewchar +"元" ;break;
case 1: if(perchar!=0)tmpnewchar= tmpnewchar +"拾" ;break;
case 2: if(perchar!=0)tmpnewchar= tmpnewchar +"佰" ;break;
case 3: if(perchar!=0)tmpnewchar= tmpnewchar +"仟" ;break;
case 4: tmpnewchar= tmpnewchar +"萬" ;break;
case 5: if(perchar!=0)tmpnewchar= tmpnewchar +"拾" ;break;
case 6: if(perchar!=0)tmpnewchar= tmpnewchar +"佰" ;break;
case 7: if(perchar!=0)tmpnewchar= tmpnewchar +"仟" ;break;
case 8: tmpnewchar= tmpnewchar +"億" ;break;
case 9: tmpnewchar= tmpnewchar +"拾" ;break;
}
newchar = tmpnewchar + newchar;
}
//小數(shù)點(diǎn)之后進(jìn)行轉(zhuǎn)化
if(Num.indexOf(".")!=-1)
{
if(part[1].length > 2)
{
alert("小數(shù)點(diǎn)之后只能保留兩位,系統(tǒng)將自動(dòng)截段");
part[1] = part[1].substr(0,2)
}
for(i=0;i<part[1].length;i++)
{
tmpnewchar = ""
perchar = part[1].charAt(i)
switch(perchar)
{
case "0": tmpnewchar="零" + tmpnewchar ;break;
case "1": tmpnewchar="壹" + tmpnewchar ;break;
case "2": tmpnewchar="貳" + tmpnewchar ;break;
case "3": tmpnewchar="叁" + tmpnewchar ;break;
case "4": tmpnewchar="肆" + tmpnewchar ;break;
case "5": tmpnewchar="伍" + tmpnewchar ;break;
case "6": tmpnewchar="陸" + tmpnewchar ;break;
case "7": tmpnewchar="柒" + tmpnewchar ;break;
case "8": tmpnewchar="捌" + tmpnewchar ;break;
case "9": tmpnewchar="玖" + tmpnewchar ;break;
}
if(i==0)tmpnewchar =tmpnewchar + "角";
if(i==1)tmpnewchar = tmpnewchar + "分";
newchar = newchar + tmpnewchar;
}
}
if(newchar.search("分") != -1)
{
newchar = newchar.replace("零角", "零");
}
//替換所有無用漢字
while(newchar.search("零零") != -1)
newchar = newchar.replace("零零", "零");
newchar = newchar.replace("零億", "億");
newchar = newchar.replace("億萬", "億");
newchar = newchar.replace("零萬", "萬");
newchar = newchar.replace("零元", "元");
newchar = newchar.replace("零角", "");
newchar = newchar.replace("零分", "");
if (newchar.charAt(newchar.length-1) == "元" || newchar.charAt(newchar.length-1) == "角")
newchar = newchar+"整";
return newchar;
}
您可能感興趣的文章:
- js判斷輸入是否中文,數(shù)字,身份證等等js函數(shù)集合
- js中判斷數(shù)字\字母\中文的正則表達(dá)式 (實(shí)例)
- JS控制阿拉伯?dāng)?shù)字轉(zhuǎn)為中文大寫示例代碼
- JavaScript 動(dòng)態(tài)將數(shù)字金額轉(zhuǎn)化為中文大寫金額
- JS實(shí)現(xiàn)金額轉(zhuǎn)換(將輸入的阿拉伯?dāng)?shù)字)轉(zhuǎn)換成中文的實(shí)現(xiàn)代碼
- JavaScript將數(shù)字轉(zhuǎn)換成大寫中文的方法
- javascript中驗(yàn)證大寫字母、數(shù)字和中文
- JavaScript實(shí)現(xiàn)把數(shù)字轉(zhuǎn)換成中文
- JS驗(yàn)證逗號(hào)隔開可以是中文字母數(shù)字
- 基于JS實(shí)現(xiàn)數(shù)字+字母+中文的混合排序方法
- JavaScript實(shí)現(xiàn)阿拉伯?dāng)?shù)字和中文數(shù)字互相轉(zhuǎn)換
相關(guān)文章
微信小程序+ECharts實(shí)現(xiàn)動(dòng)態(tài)刷新的過程記錄
這篇文章主要給大家介紹了關(guān)于微信小程序+ECharts實(shí)現(xiàn)動(dòng)態(tài)刷新的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-05-05
JavaScript中實(shí)現(xiàn)最高效的數(shù)組亂序方法
這篇文章主要介紹了JavaScript中實(shí)現(xiàn)最高效的數(shù)組亂序方法,數(shù)組亂序的意思是,把數(shù)組內(nèi)的所有元素排列順序打亂,需要的朋友可以參考下2014-10-10
URLSearchParams快速解析URL查詢參數(shù)實(shí)現(xiàn)
這篇文章主要為大家介紹了URLSearchParams快速解析URL查詢參數(shù)實(shí)現(xiàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-06-06
JS簡(jiǎn)單實(shí)現(xiàn)點(diǎn)擊復(fù)制鏈接的方法
這篇文章主要介紹了JS簡(jiǎn)單實(shí)現(xiàn)點(diǎn)擊復(fù)制鏈接的方法,提供了2種簡(jiǎn)單的復(fù)制鏈接操作方法供大家選擇使用,需要的朋友可以參考下2016-08-08
Webpack devServer中的 proxy 實(shí)現(xiàn)跨域的解決
這篇文章主要介紹了Webpack devServer中的 proxy 實(shí)現(xiàn)跨域的解決,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-06-06
用Javascript實(shí)現(xiàn)Windows任務(wù)管理器的代碼
在Windows系統(tǒng)上,自從98系統(tǒng)以來就提供了腳本宿主(Windows Scripting Host 簡(jiǎn)稱WSH)的功能,WSH可以加載并運(yùn)行JS和VBS腳本,并支持調(diào)用系統(tǒng)的COM組件,在COM組件的支持下腳本可以輕松實(shí)現(xiàn)非常強(qiáng)大的功能2012-03-03

