Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimana untuk Menukar Nombor kepada Lakhs dan Crores dalam JavaScript?

Bagaimana untuk Menukar Nombor kepada Lakhs dan Crores dalam JavaScript?

DDD
DDDasal
2024-11-06 16:54:03156semak imbas

How to Convert Numbers to Lakhs and Crores in JavaScript?

Menukar Nombor kepada Lakhs/Crores

Sebagai pembangun, menghadapi tugas menukar nombor kepada perkataan sering timbul. Walaupun pilihan kod sedia ada mungkin kelihatan panjang, artikel ini bertujuan untuk mengemukakan pendekatan yang lebih ringkas.

Kaedah Sedia Ada

Kod yang diberikan menggunakan ungkapan biasa dan gelung untuk penukaran perkataan:

<code class="javascript">var th = ['','thousand','million', 'billion','trillion'];
var dg = ['zero','one','two','three','four', 'five','six','seven','eight','nine'];
var tn = ['ten','eleven','twelve','thirteen', 'fourteen','fifteen','sixteen', 'seventeen','eighteen','nineteen'];
var tw = ['twenty','thirty','forty','fifty', 'sixty','seventy','eighty','ninety'];

function toWords(s) { ... }</code>

Sistem Penomboran Asia Selatan

Walau bagaimanapun, kod ini menukar nombor menggunakan sistem penomboran Barat (berjuta/bilion). Untuk menyesuaikannya dengan sistem Asia Selatan (lakhs/crores), pengubahsuaian diperlukan.

Kod Ringkas

Kod berikut menawarkan penyelesaian yang diperkemas:

<code class="javascript">var a = ['','one ','two ','three ','four ', 'five ','six ','seven ','eight ','nine ','ten ','eleven ','twelve ','thirteen ','fourteen ','fifteen ','sixteen ','seventeen ','eighteen ','nineteen '];
var b = ['', '', 'twenty','thirty','forty','fifty', 'sixty','seventy','eighty','ninety'];

function inWords (num) {
    if ((num = num.toString()).length > 9) return 'overflow';
    n = ('000000000' + num).substr(-9).match(/^(\d{2})(\d{2})(\d{2})(\d{1})(\d{2})$/);
    if (!n) return; var str = '';
    str += (n[1] != 0) ? (a[Number(n[1])] || b[n[1][0]] + ' ' + a[n[1][1]]) + 'crore ' : '';
    str += (n[2] != 0) ? (a[Number(n[2])] || b[n[2][0]] + ' ' + a[n[2][1]]) + 'lakh ' : '';
    str += (n[3] != 0) ? (a[Number(n[3])] || b[n[3][0]] + ' ' + a[n[3][1]]) + 'thousand ' : '';
    str += (n[4] != 0) ? (a[Number(n[4])] || b[n[4][0]] + ' ' + a[n[4][1]]) + 'hundred ' : '';
    str += (n[5] != 0) ? ((str != '') ? 'and ' : '') + (a[Number(n[5])] || b[n[5][0]] + ' ' + a[n[5][1]]) + 'only ' : '';
    return str;
}</code>

Kod yang disemak ini menukar nombor kepada perkataan dalam sistem penomboran Asia Selatan, menyumbang lakh dan crores.

Atas ialah kandungan terperinci Bagaimana untuk Menukar Nombor kepada Lakhs dan Crores dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn