Cuando estaba trabajando en un proyecto, tuve que convertirlo automáticamente en mayúsculas después de ingresar la cantidad minúscula. Después de una investigación, compilé el siguiente código y lo compartí con todos. Espero que sea útil.
La copia del código es la siguiente:
función arabia_to_chinese (num) {
para (i = num.length-1; i> = 0; i--)
{
Num = num.replace (",", "")
Num = num.replace ("", "")
}
Num = num.replace ("¥", "")
if (isnan (num)) {
alerta ("Verifique si la cantidad en minúsculas es correcta");
devolver;
}
parte = string (num) .split (".");
newChar = "";
para (i = parte [0] .length-1; i> = 0; i-) {
if (parte [0] .length> 10) {alerta ("El número de dígitos es demasiado grande para calcular"); devolver "";}
tmpnewchar = ""
perchar = parte [0] .charat (i);
Switch (perchar) {
caso "0": tmpnewchar = "cero" + tmpnewchar; break;
caso "1": tmpnewchar = "一" + tmpnewchar; break;
caso "2": tmpnewchar = "2" + tmpnewchar; break;
caso "3": tmpnewchar = "tres" + tmpnewchar; break;
caso "4": tmpnewchar = "si" + tmpnewchar; break;
caso "5": tmpnewchar = "wu" + tmpnewchar; break;
caso "6": tmpnewchar = "lu" + tmpnewchar; break;
caso "7": tmpnewchar = "7" + tmpnewchar; break;
caso "8": tmpnewchar = "8" + tmpnewchar; break;
caso "9": tmpnewchar = "9" + tmpnewchar; break;
}
Switch (parte [0] .length-i-1) {
Caso 0: tmpnewchar = tmpnewchar +"meta"; break;
Caso 1: if (perchar! = 0) tmpnewchar = tmpnewchar +"seleccionar"; ruptura;
Caso 2: if (perchar! = 0) tmpnewchar = tmpnewchar +"bai"; break;
Caso 3: if (perchar! = 0) tmpnewchar = tmpnewchar +"qian"; break;
Caso 4: tmpnewchar = tmpnewchar +"wan"; break;
Caso 5: if (perchar! = 0) tmpnewchar = tmpnewchar +"select"; ruptar;
Caso 6: if (perchar! = 0) tmpnewchar = tmpnewchar +"bai"; break;
Caso 7: if (perchar! = 0) tmpnewchar = tmpnewchar +"qian"; break;
Caso 8: tmpnewchar = tmpnewchar +"mil millones"; break;
Caso 9: tmpnewchar = tmpnewchar +"select"; break;
}
newchar = tmpnewchar + newchar;
}
if (num.indexof (".")! =-1) {
if (parte [1] .length> 2) {
Parte [1] = Parte [1] .Substr (0,2)
}
para (i = 0; i <parte [1] .length; i ++) {
tmpnewchar = ""
perchar = parte [1] .charat (i)
Switch (perchar) {
caso "0": tmpnewchar = "cero" + tmpnewchar; break;
caso "1": tmpnewchar = "一" + tmpnewchar; break;
caso "2": tmpnewchar = "2" + tmpnewchar; break;
caso "3": tmpnewchar = "tres" + tmpnewchar; break;
caso "4": tmpnewchar = "si" + tmpnewchar; break;
caso "5": tmpnewchar = "wu" + tmpnewchar; break;
caso "6": tmpnewchar = "lu" + tmpnewchar; break;
caso "7": tmpnewchar = "7" + tmpnewchar; break;
caso "8": tmpnewchar = "8" + tmpnewchar; break;
caso "9": tmpnewchar = "9" + tmpnewchar; break;
}
if (i == 0) tmpnewchar = tmpnewchar + "ángulo";
if (i == 1) tmpnewchar = tmpnewchar + "punto";
newchar = newchar + tmpnewchar;
}
}
while (newchar.search ("zerozen")! = -1)
newChar = newchar.replace ("cero cero", "cero");
newChar = newchar.replace ("cero mil millones", "rendimiento");
newChar = newChar.replace ("mil millones", "mil millones");
newChar = newchar.replace ("cero diez mil", "diez mil");
newChar = newchar.replace ("cero yuan", "yuan");
newChar = newchar.replace ("ángulo cero", "");
newChar = newchar.replace ("cero puntos", "");
if (newchar.charat (newChar.Length-1) == "Meta" || NewChar.Charat (newChar.Length-1) == "Angle")
newchar = newchar+"completo"
devolver newchar;
}