המרת מספרים למילים באמצעות JavaScript

הרבה תכנות כרוך בחישובים עם מספרים ותוכלו לעצב בקלות מספרים לתצוגה על ידי הוספת פסיקים, עשרונים, סימנים שליליים ותווים מתאימים אחרים, תלוי בסוג המספר שהוא.

אבל אתה לא תמיד מציג את התוצאות שלך כחלק ממשוואה מתמטית. האינטרנט עבור המשתמש הכללי עוסק במילים יותר מאשר על מספרים, כך שלפעמים מספר שמוצג כמספר אינו מתאים.

במקרה זה, אתה זקוק למקבילה של המספר במילים ולא בספרות. כאן אתה יכול להיתקל בקשיים. איך ממירים את התוצאות המספריות של החישובים שלך כשאתה זקוק למספר המוצג במילים?

אם תרצה לבצע המרות אלה באתר שלך, תזדקק לקוד JavaScript שיוכל לבצע את ההמרה עבורך. הדרך הפשוטה ביותר לעשות זאת היא להשתמש ב- קוד למטה; פשוט בחר את הקוד והעתק אותו לקובץ שנקרא toword.js.

// המר מספרים למילים
// זכויות יוצרים 25 ביולי 2006, מאת סטיבן צ'פמן http://javascript.about.com
// ניתנת הרשאה לשימוש ב- Javascript זה בדף האינטרנט שלך
// בתנאי שכל הקוד (כולל הודעת זכויות יוצרים זו) הוא
// משמש בדיוק כמוצג (ניתן לשנות את מערכת המספור אם תרצה)

// מערכת מספור אמריקאית
var th = ['', 'אלף', 'מיליון', 'מיליארד', 'טריליון'];
// בטל את הסימון של שורה זו עבור מערכת המספרים האנגלית
// var th = ['', 'אלף', 'מיליון', 'מיליארד', 'מיליארד'];

instagram viewer

var dg = ['אפס', 'אחד', 'שתיים', 'שלוש', 'ארבע',
'חמש', 'שש', 'שבע', 'שמונה', 'תשע']; var tn =
['עשר', 'אחת-עשרה', 'שתים-עשרה', 'שלוש-עשרה', 'ארבע-עשרה', 'חמש-עשרה', 'שש-עשרה',
'שבע עשרה', 'שמונה עשרה', 'תשע עשרה']; var tw = ['עשרים', 'שלושים', 'ארבעים', 'חמישים',
'שישים', 'שבעים', 'שמונים', 'תשעים']; פונקציה ל- AdWords {s = s.toString (); s =
s.replace (/ [\,] / g, ''); אם (ים! = parseFloat (ים)) יחזירו 'לא מספר'; var x =
s.indexOf ('.'); אם (x == -1) x = s.length; אם (x> 15) יחזיר 'גדול מדי'; var n =
s.split (''); var str = ''; var sk = 0; עבור (var i = 0; i ((x-i)% 3 == 2) {if (n [i] == '1') {str + = tn [Number (n [i + 1])] + ''; i ++; sk = 1;}
אחרת אם (n [i]! = 0) {str + = tw [n [i] -2] + ''; sk = 1;}} אחרת if (n [i]! = 0) {str + =
dg [n [i]] + ''; אם ((x-i)% 3 == 0) str + = 'מאה'; sk = 1;} if ((x-i)% 3 == 1) {if (sk)
str + = th [(x-i-1) / 3] + ''; sk = 0;}} if (x! = s.length) {var y = s.length; str + =
'נקודה'; עבור (var i = x + 1; istr.replace (/ \ s + / g, '');}

השלב האחרון הוא לקרוא לתסריט לביצוע ההמרה למילים בשבילכם. כדי להמיר מספר למילים אתה רק צריך לקרוא לפונקציה שמעבירה לו את המספר שברצונך להמיר והמילים המתאימות יוחזרו.

שים לב שפונקציה זו יכולה להמיר מספרים גדולים ככל 999,999,999,999,999 למילים ועם כמה מקומות עשרוניים שתרצו. אם אתה מנסה להמיר א מספר גדול מזה זה יחזור "גדול מדי."

מספרים, פסיקים, רווחים ותקופה יחידה עבור הנקודה העשרונית הם התווים המקובלים היחידים שניתן להשתמש בהם למספר המומר. אם הוא מכיל משהו מעבר לדמויות האלה, הוא יחזיר "לא מספר".