Code JavaScript đọc số thành chữ
Sưu tập code Javascript
<script language="javascript" type="text/javascript">
var ChuSo=new Array(" không"," một"," hai"," ba"," bốn"," năm"," sáu"," bảy"," tám"," chín");
var Tien=new Array( "", " nghìn", " triệu", " tỉ", " nghìn triệu", " trăm triệu");
function trim(s)
{
var r=s.split(".");
var n=r.length;
var s="";
for (var i=0; i < n; i++){s = s+r[i];}
return s;
}
function DocSo3ChuSo(baso,sign)
{
var tram; var chuc; var donvi; var KetQua="";
tram=parseInt(baso/100);
chuc=parseInt((baso%100)/10);
donvi=baso%10;
if(tram==0 && chuc==0 && donvi==0) return "";
if((tram==0 && sign.toFixed(0)!=0) || tram!=0)
{
KetQua += ChuSo[tram] + " trăm";
if ((chuc == 0) && (donvi != 0)) KetQua += " lẻ";
}
if ((chuc != 0) && (chuc != 1))
{
KetQua += ChuSo[chuc] + " mươi";
if ((chuc == 0) && (donvi != 0)) KetQua = KetQua + " lẻ";
}
if (chuc == 1) KetQua += " mười";
switch (donvi)
{
case 1:
if ((chuc != 0) && (chuc != 1))
{
KetQua += " mốt";
}
else
{
KetQua += ChuSo[donvi];
}
break;
case 5:
if (chuc == 0)
{
KetQua += ChuSo[donvi];
}
else
{
KetQua += " lăm";
}
break;
default:
if (donvi != 0)
{
KetQua += ChuSo[donvi];
}
break;
}
return KetQua;
}
function DocTienBangChu()
{
var number=parseFloat(trim(document.getElementById("number").value));
var SoTien=number.toFixed(0);
var lan=0;
var i=0;
var so=0;
var KetQua="";
var tmp="";
var ViTri = new Array();
if(SoTien<0) return "Số tiền âm !";
if(SoTien==0) return "Không đồng !";
if(SoTien>0)
{
so=SoTien;
}
else
{
so = -SoTien;
}
if (SoTien > 999999999999)
{
return "Số quá lớn!";
}
ViTri[5] = Math.floor(so / 1000000000000000);
if(isNaN(ViTri[5]))
ViTri[5] = "0";
so = so - parseFloat(ViTri[5].toString()) * 1000000000000000;
ViTri[4] = Math.floor(so / 1000000000000);
if(isNaN(ViTri[4]))
ViTri[4] = "0";
so = so - parseFloat(ViTri[4].toString()) * 1000000000000;
ViTri[3] = Math.floor(so / 1000000000);
if(isNaN(ViTri[3]))
ViTri[3] = "0";
so = so - parseFloat(ViTri[3].toString()) * 1000000000;
ViTri[2] = parseInt(so / 1000000);
if(isNaN(ViTri[2]))
ViTri[2] = "0";
ViTri[1] = parseInt((so % 1000000) / 1000);
if(isNaN(ViTri[1]))
ViTri[1] = "0";
ViTri[0] = parseInt(so % 1000);
if(isNaN(ViTri[0]))
ViTri[0] = "0";
if (ViTri[5] > 0)
{
lan = 5;
}
else if (ViTri[4] > 0)
{
lan = 4;
}
else if (ViTri[3] > 0)
{
lan = 3;
}
else if (ViTri[2] > 0)
{
lan = 2;
}
else if (ViTri[1] > 0)
{
lan = 1;
}
else
{
lan = 0;
}
for (i = lan; i >= 0; i--)
{
tmp = DocSo3ChuSo(ViTri[i],lan - i);
KetQua += tmp;
if (ViTri[i] > 0) KetQua += Tien[i];
if ((i > 0) && (tmp.length > 0)) KetQua += ',';//&& (!string.IsNullOrEmpty(tmp))
}
if (KetQua.substring(KetQua.length - 1) == ',')
{
KetQua = KetQua.substring(0, KetQua.length - 1);
}
KetQua = KetQua.substring(1,2).toUpperCase()+ KetQua.substring(2);
if (KetQua.length > 1)
{
KetQua = KetQua+ " đồng";
}
return KetQua;
}
function docso()
{
document.getElementById("valstr").value = DocTienBangChu();
document.getElementById("valstr").select(); document.execCommand("copy");
}
</script>
var ChuSo=new Array(" không"," một"," hai"," ba"," bốn"," năm"," sáu"," bảy"," tám"," chín");
var Tien=new Array( "", " nghìn", " triệu", " tỉ", " nghìn triệu", " trăm triệu");
function trim(s)
{
var r=s.split(".");
var n=r.length;
var s="";
for (var i=0; i < n; i++){s = s+r[i];}
return s;
}
function DocSo3ChuSo(baso,sign)
{
var tram; var chuc; var donvi; var KetQua="";
tram=parseInt(baso/100);
chuc=parseInt((baso%100)/10);
donvi=baso%10;
if(tram==0 && chuc==0 && donvi==0) return "";
if((tram==0 && sign.toFixed(0)!=0) || tram!=0)
{
KetQua += ChuSo[tram] + " trăm";
if ((chuc == 0) && (donvi != 0)) KetQua += " lẻ";
}
if ((chuc != 0) && (chuc != 1))
{
KetQua += ChuSo[chuc] + " mươi";
if ((chuc == 0) && (donvi != 0)) KetQua = KetQua + " lẻ";
}
if (chuc == 1) KetQua += " mười";
switch (donvi)
{
case 1:
if ((chuc != 0) && (chuc != 1))
{
KetQua += " mốt";
}
else
{
KetQua += ChuSo[donvi];
}
break;
case 5:
if (chuc == 0)
{
KetQua += ChuSo[donvi];
}
else
{
KetQua += " lăm";
}
break;
default:
if (donvi != 0)
{
KetQua += ChuSo[donvi];
}
break;
}
return KetQua;
}
function DocTienBangChu()
{
var number=parseFloat(trim(document.getElementById("number").value));
var SoTien=number.toFixed(0);
var lan=0;
var i=0;
var so=0;
var KetQua="";
var tmp="";
var ViTri = new Array();
if(SoTien<0) return "Số tiền âm !";
if(SoTien==0) return "Không đồng !";
if(SoTien>0)
{
so=SoTien;
}
else
{
so = -SoTien;
}
if (SoTien > 999999999999)
{
return "Số quá lớn!";
}
ViTri[5] = Math.floor(so / 1000000000000000);
if(isNaN(ViTri[5]))
ViTri[5] = "0";
so = so - parseFloat(ViTri[5].toString()) * 1000000000000000;
ViTri[4] = Math.floor(so / 1000000000000);
if(isNaN(ViTri[4]))
ViTri[4] = "0";
so = so - parseFloat(ViTri[4].toString()) * 1000000000000;
ViTri[3] = Math.floor(so / 1000000000);
if(isNaN(ViTri[3]))
ViTri[3] = "0";
so = so - parseFloat(ViTri[3].toString()) * 1000000000;
ViTri[2] = parseInt(so / 1000000);
if(isNaN(ViTri[2]))
ViTri[2] = "0";
ViTri[1] = parseInt((so % 1000000) / 1000);
if(isNaN(ViTri[1]))
ViTri[1] = "0";
ViTri[0] = parseInt(so % 1000);
if(isNaN(ViTri[0]))
ViTri[0] = "0";
if (ViTri[5] > 0)
{
lan = 5;
}
else if (ViTri[4] > 0)
{
lan = 4;
}
else if (ViTri[3] > 0)
{
lan = 3;
}
else if (ViTri[2] > 0)
{
lan = 2;
}
else if (ViTri[1] > 0)
{
lan = 1;
}
else
{
lan = 0;
}
for (i = lan; i >= 0; i--)
{
tmp = DocSo3ChuSo(ViTri[i],lan - i);
KetQua += tmp;
if (ViTri[i] > 0) KetQua += Tien[i];
if ((i > 0) && (tmp.length > 0)) KetQua += ',';//&& (!string.IsNullOrEmpty(tmp))
}
if (KetQua.substring(KetQua.length - 1) == ',')
{
KetQua = KetQua.substring(0, KetQua.length - 1);
}
KetQua = KetQua.substring(1,2).toUpperCase()+ KetQua.substring(2);
if (KetQua.length > 1)
{
KetQua = KetQua+ " đồng";
}
return KetQua;
}
function docso()
{
document.getElementById("valstr").value = DocTienBangChu();
document.getElementById("valstr").select(); document.execCommand("copy");
}
</script>
Keywords: Hàm đọc số thành chữ trực tuyến, Code JS đọc số thành chữ.