عندما كنت أعمل في مشروع ، اضطررت إلى تحويله تلقائيًا إلى أقصى بعد إدخال المبلغ الصغير. بعد بعض الأبحاث ، قمت بتجميع الكود التالي وشاركته مع الجميع. آمل أن يكون مفيدًا.
نسخة الكود كما يلي:
وظيفة aramia_to_chinese (num) {
لـ (i = num.length-1 ؛ i> = 0 ؛ i--)
{
num = num.replace ("،" ، "")
num = num.replace ("" ، "")
}
num = num.replace ("¥" ، "")
if (isnan (num)) {
تنبيه ("يرجى التحقق مما إذا كان المبلغ الصغير صحيح") ؛
يعود؛
}
جزء = سلسلة (num) .split (".") ؛
newchar = "" ؛
لـ (i = part [0] .length-1 ؛ i> = 0 ؛ i-) {
if (part [0] .Length> 10) {Alert ("عدد الأرقام كبيرة جدًا بحيث لا يمكن حسابها") ؛ يعود ""؛}
TMPNewChar = ""
perchar = part [0] .charat (i) ؛
التبديل (perchar) {
الحالة "0": tmpNewChar = "Zero" + TMPNewChar ؛ Break ؛
الحالة "1": tmpNewChar = "一" + tmpNewChar ؛ Break ؛
الحالة "2": TMPNewChar = "2" + TMPNewChar ؛ Break ؛
الحالة "3": TMPNewChar = "Three" + TMPNewChar ؛ Break ؛
الحالة "4": TMPNewChar = "Si" + TMPNewChar ؛ Break ؛
الحالة "5": TMPNewChar = "Wu" + TMPNewChar ؛ Break ؛
الحالة "6": TMPNewChar = "Lu" + TMPNewChar ؛ Break ؛
الحالة "7": TMPNewChar = "7" + TMPNewChar ؛ Break ؛
الحالة "8": TMPNewChar = "8" + TMPNewChar ؛ Break ؛
الحالة "9": TMPNewChar = "9" + TMPNewChar ؛ Break ؛
}
التبديل (جزء [0] .Length-I-1) {
الحالة 0: tmpNewChar = tmpNewchar +"meta" ؛ break ؛
الحالة 1: if (perchar! = 0) tmpNewChar = tmpNewchar +"select" ؛ break ؛
الحالة 2: if (perchar! = 0) tmpNewchar = tmpNewchar +"Bai" ؛ Break ؛
الحالة 3: if (perchar! = 0) tmpNewchar = tmpNewchar +"Qian" ؛ Break ؛
الحالة 4: tmpNewChar = tmpNewchar +"wan" ؛ Break ؛
الحالة 5: if (perchar! = 0) tmpNewChar = tmpNewchar +"select" ؛ break ؛
الحالة 6: if (perchar! = 0) tmpNewchar = tmpNewchar +"Bai" ؛ Break ؛
الحالة 7: if (perchar! = 0) tmpNewchar = tmpNewchar +"Qian" ؛ Break ؛
الحالة 8: TMPNewChar = TMPNewChar +"مليار" ؛ استراحة ؛
الحالة 9: TMPNewChar = TMPNewChar +"SELECT" ؛ Break ؛
}
newchar = tmpNewchar + Newchar ؛
}
if (num.indexof (".")! =-1) {
if (part [1] .Length> 2) {
جزء [1] = جزء [1] .Substr (0،2)
}
لـ (i = 0 ؛ i <part [1] .Length ؛ i ++) {
TMPNewChar = ""
perchar = part [1] .charat (i)
التبديل (perchar) {
الحالة "0": tmpNewChar = "Zero" + TMPNewChar ؛ Break ؛
الحالة "1": tmpNewChar = "一" + tmpNewChar ؛ Break ؛
الحالة "2": TMPNewChar = "2" + TMPNewChar ؛ Break ؛
الحالة "3": TMPNewChar = "Three" + TMPNewChar ؛ Break ؛
الحالة "4": TMPNewChar = "Si" + TMPNewChar ؛ Break ؛
الحالة "5": TMPNewChar = "Wu" + TMPNewChar ؛ Break ؛
الحالة "6": TMPNewChar = "Lu" + TMPNewChar ؛ Break ؛
الحالة "7": TMPNewChar = "7" + TMPNewChar ؛ Break ؛
الحالة "8": TMPNewChar = "8" + TMPNewChar ؛ Break ؛
الحالة "9": TMPNewChar = "9" + TMPNewChar ؛ Break ؛
}
if (i == 0) tmpNewChar = tmpNewchar + "angle" ؛
if (i == 1) tmpNewChar = tmpNewchar + "point" ؛
Newchar = Newchar + TMPNewChar ؛
}
}
بينما (newchar.search ("Zerozen")! = -1)
newchar = newchar.replace ("Zero Zero" ، "Zero") ؛
newchar = newchar.replace ("Zero مليار" ، "العائد") ؛
newchar = newchar.replace ("مليار" ، "مليار") ؛
newchar = newchar.replace ("Zero Ten Thousd" ، "Ten Thent") ؛
newchar = newchar.replace ("Zero Yuan" ، "Yuan") ؛
newchar = newchar.replace ("Zero Angle" ، "") ؛
newchar = newchar.replace ("Zero Points" ، "") ؛
if (newchar.charat (newchar.length-1) == "meta" || newchar.charat (newchar.length-1) == "Angle")
Newchar = Newchar+"كاملة"
إرجاع نيار
}