JS數字數字貨幣轉換中文貨幣
1. 阿拉伯數字轉換成大寫中文的貨幣
=TEXT(C1*100,"[DBNUM2]人民幣:0仟0佰0拾0萬0仟0佰0拾0元0角0分整")
2. javascript有沒有提供將數字格式化為貨幣形式
<script>
function outputMoney(number)
{
number=number.replace(/,/g,"");
if (number=="") return "";
if(number<0)
return '-'+outputDollars(Math.floor(Math.abs(number)-0) + '') + outputCents(Math.abs(number) - 0);
else
return outputDollars(Math.floor(number-0) + '') + outputCents(number - 0);
}
function outputDollars(number)
{
if (number.length<= 3)
return (number == '' ? '0' : number);
else
{
var mod = number.length%3;
var output = (mod == 0 ? '' : (number.substring(0,mod)));
for (i=0 ; i< Math.floor(number.length/3) ; i++)
{
if ((mod ==0) && (i ==0))
output+= number.substring(mod+3*i,mod+3*i+3);
else
output+= ',' + number.substring(mod+3*i,mod+3*i+3);
}
return (output);
}
}
function outputCents(amount)
{
amount = Math.round( ( (amount) - Math.floor(amount) ) *100);
return (amount<10 ? '.0' + amount : '.' + amount);
}
</script>
補充:JavaScript一種直譯式腳本語言,是一種動態類型、弱類型、基於原型的語言,內置支持類型。它的解釋器被稱為JavaScript引擎,為瀏覽器的一部分,廣泛用於客戶端的腳本語言,最早是在HTML(標准通用標記語言下的一個應用)網頁上使用,用來給HTML網頁增加動態功能。
3. javascript貨幣數字自動轉換為漢字大寫
var nums=[{'1':'壹'},{'2':'貳'},{'3':'叄'},.....];
var text_3=document.getElementById('text_3');
text_3.onblur=function(e){
var text=this.value;
var temp;
for(i=0;i<text.length;i++)
{
for(j=0;j<nums.length;j++)
{
for(item in nums[j])
{
if(text[i]===item)
{
temp+=nums[item];
break;
}
}
break;
}
}
document.getElementById('text_4').value=temp;
}
沒在編譯器上寫的 也沒測試 你試試這樣可以不,
4. 電子表格里的數字貨幣金額怎樣轉換成中文大寫 愛說篇
直接使用 滑鼠右鍵 「自定義單元格格式」==》特殊==》中文大寫即可。
如果不滿意,試試這:
=NUMBERSTRING(1234567890,1)
參數1可以修改 ,123456..是假設數字,可以改為單元格名稱
還不行就試試:
=SUBSTITUTE(SUBSTITUTE(TEXT(TRUNC(FIXED(A1)),"[>0][dbnum2];[<0]負[dbnum2];;")&TEXT(RIGHT(FIXED(A1),2),"元[dbnum2]0角0分;;"&IF(ABS(A1)>1%,"元整",)),"零角",IF(ABS(A1)<1,,"零")),"零分","整")
其中A1是假設數據的單元格。
5. 求將阿拉伯數字的金額轉換為中文數字的程序
<script language="javascript">
function i2c(n){
if(typeof(n) == "number"){
if(-1 == n.toString().indexOf(".")){
return seti2c(n);
}else{
var i,istr,f,fstr,a,rstr;
a = n.toString().split(".");
i = a[0];
f = a[1];
istr = seti2c(i);
fstr = setf2c(f);
rstr = istr+fstr;
rstr = rstr.replace(/^圓/,"");
return rstr;
}
}else{
return "---";
}
}
function seti2c(n){
var ns = n.toString();
var tempstr = "";
for(var i=1;i<ns.length+1;i++){
switch(i){
case 1:
var t = ns.substr(ns.length-i,1);
if(t!="0"){
tempstr = t+"圓"+tempstr;
}else{
tempstr = "圓"+tempstr;
}
break;
case 2:
var t = ns.substr(ns.length-i,1);
if(t!="0"){
tempstr = t+"拾"+tempstr;
}else{
tempstr = "0"+tempstr;
}
break;
case 3:
var t = ns.substr(ns.length-i,1);
if(t!="0"){
tempstr = t+"佰"+tempstr;
}else{
tempstr = "0"+tempstr;
}
break;
case 4:
var t = ns.substr(ns.length-i,1);
if(t!="0"){
tempstr = t+"仟"+tempstr;
}else{
tempstr = "0"+tempstr;
}
break;
case 5:
var t = ns.substr(ns.length-i,1);
if(t!="0"){
tempstr = t+"萬"+tempstr;
}else{
tempstr = "萬"+tempstr;
}
break;
case 6:
var t = ns.substr(ns.length-i,1);
if(t!="0"){
tempstr = t+"拾"+tempstr;
}else{
tempstr = "0"+tempstr;
}
break;
case 7:
var t = ns.substr(ns.length-i,1);
if(t!="0"){
tempstr = t+"佰"+tempstr;
}else{
tempstr = "0"+tempstr;
}
break;
case 8:
var t = ns.substr(ns.length-i,1);
if(t!="0"){
tempstr = t+"仟"+tempstr;
}else{
tempstr = "0"+tempstr;
}
break;
case 9:
var t = ns.substr(ns.length-i,1);
if(t!="0"){
tempstr = t+"億"+tempstr;
}else{
tempstr = "億"+tempstr;
}
break;
case 10:
var t = ns.substr(ns.length-i,1);
if(t!="0"){
tempstr = t+"拾"+tempstr;
}else{
tempstr = "0"+tempstr;
}
break;
case 11:
var t = ns.substr(ns.length-i,1);
if(t!="0"){
tempstr = t+"佰"+tempstr;
}else{
tempstr = "0"+tempstr;
}
break;
case 12:
var t = ns.substr(ns.length-i,1);
if(t!="0"){
tempstr = t+"仟"+tempstr;
}else{
tempstr = "0"+tempstr;
}
break;
default:break;
}
}
return g2b(tempstr);
}
function setf2c(n){
var ns = n.toString();
var tempstr = "";
for(var i=0;i<ns.length;i++){
switch(i){
case 0:
var t = ns.substr(i,1);
if(t!="0"){
tempstr += t+"角";
}else{
tempstr += "0";
}
break;
case 1:
var t = ns.substr(i,1);
if(t!="0"){
tempstr += t+"分";
}
break;
default:break;
}
}
return g2b(tempstr);
}
function g2b(s){
rs = s.replace(/0+/g,"0");
rs = rs.replace(/0(圓|萬|億)/g,"$1");
rs = rs.replace("億萬","億");
rs = rs.replace(/0/g,"零");
rs = rs.replace(/1/g,"壹");
rs = rs.replace(/2/g,"貳");
rs = rs.replace(/3/g,"叄");
rs = rs.replace(/4/g,"肆");
rs = rs.replace(/5/g,"伍");
rs = rs.replace(/6/g,"陸");
rs = rs.replace(/7/g,"柒");
rs = rs.replace(/8/g,"捌");
rs = rs.replace(/9/g,"玖");
return rs;
}
document.write(i2c(2334210001.04));
</script>
6. 求JS 把阿拉伯數字轉換成中文,是金額類型的
可以採用定義串的形式,然後進行替換的方法操作
比如:var n="12345678090";
var unit = "千百拾億千百拾萬千百拾元", str = "";
然後組裝str
str.replace(/零(千|百|拾|角)/g, "零")
這個方式
7. 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.");
}
8. js怎麼把數字金額轉換為大寫金額
網路一下這種寫好的js很多 隨便選個就可以;我幫你搜了個;
function Arabia_to_Chinese(Num){
for(i=Num.length-1;i>=0;i--)
{
Num = Num.replace(",","")
Num = Num.replace(" ","")
}
Num = Num.replace("¥","")
if(isNaN(Num)) {
alert("請檢查小寫金額是否正確");
return;
}
part = String(Num).split(".");
newchar = "";
for(i=part[0].length-1;i>=0;i--){
if(part[0].length > 10){ alert("位數過大,無法計算");return "";}
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;
}
if(Num.indexOf(".")!=-1){
if(part[1].length > 2) {
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;
}
}
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;
}
看了下沒什麼大問題
9. 如何在excel中將數字貨幣變成中文大寫貨幣
這個比較容易啊!假設是 23.68元 ,選中這個單元格-右鍵-設置單元格格式—特殊—(右邊的)中文大寫數字
10. js怎麼把數字金額轉換中文大寫金額
//代碼如下所示:
functionconvertCurrency(money){
//漢字的數字
varcnNums=newArray('零','壹','貳','叄','肆','伍','陸','柒','捌','玖');
//基本單位
varcnIntRadice=newArray('','拾','佰','仟');
//對應整數部分擴展單位
varcnIntUnits=newArray('','萬','億','兆');
//對應小數部分單位
varcnDecUnits=newArray('角','分','毫','厘');
//整數金額時後面跟的字元
varcnInteger='整';
//整型完以後的單位
varcnIntLast='元';
//最大處理的數字
varmaxNum=999999999999999.9999;
//金額整數部分
varintegerNum;
//金額小數部分
vardecimalNum;
//輸出的中文金額字元串
varchineseStr='';
//分離金額後用的數組,預定義
varparts;
if(money==''){return'';}
money=parseFloat(money);
if(money>=maxNum){
//超出最大處理數字
return'';
}
if(money==0){
chineseStr=cnNums[0]+cnIntLast+cnInteger;
returnchineseStr;
}
//轉換為字元串
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){
varzeroCount=0;
varIntLen=integerNum.length;
for(vari=0;i<IntLen;i++){
varn=integerNum.substr(i,1);
varp=IntLen-i-1;
varq=p/4;
varm=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!=''){
vardecLen=decimalNum.length;
for(vari=0;i<decLen;i++){
varn=decimalNum.substr(i,1);
if(n!='0'){
chineseStr+=cnNums[Number(n)]+cnDecUnits[i];
}
}
}
if(chineseStr==''){
chineseStr+=cnNums[0]+cnIntLast+cnInteger;
}elseif(decimalNum==''){
chineseStr+=cnInteger;
}
returnchineseStr;
}