Skip to content

Instantly share code, notes, and snippets.

@saiful-bhuiyan
Created August 6, 2025 14:28
Show Gist options
  • Select an option

  • Save saiful-bhuiyan/810b37e6b289f5c83d88712d61bdee13 to your computer and use it in GitHub Desktop.

Select an option

Save saiful-bhuiyan/810b37e6b289f5c83d88712d61bdee13 to your computer and use it in GitHub Desktop.
Convert Numeric Amount to Bangla Currency Words (with jQuery & Vanilla JS Examples) This snippet converts numbers (e.g., 123.45) into Bangla currency words (e.g., একশ তেইশ টাকা এবং পঁইচাল্লিশ পয়সা).
const banglaNumbers = {
0: 'শূন্য', 1: 'এক', 2: 'দুই', 3: 'তিন', 4: 'চার', 5: 'পাঁচ',
6: 'ছয়', 7: 'সাত', 8: 'আট', 9: 'নয়', 10: 'দশ', 11: 'এগারো',
12: 'বারো', 13: 'তেরো', 14: 'চৌদ্দ', 15: 'পনেরো', 16: 'ষোলো',
17: 'সতেরো', 18: 'আঠারো', 19: 'উনিশ', 20: 'বিশ', 21: 'একুশ',
22: 'বাইশ', 23: 'তেইশ', 24: 'চব্বিশ', 25: 'পঁচিশ', 26: 'ছাব্বিশ',
27: 'সাতাশ', 28: 'আটাশ', 29: 'ঊনত্রিশ', 30: 'ত্রিশ', 31: 'একত্রিশ',
32: 'বাত্রিশ', 33: 'তেত্রিশ', 34: 'চৌত্রিশ', 35: 'পঁইত্রিশ', 36: 'ছত্রিশ',
37: 'সাঁইত্রিশ', 38: 'আটত্রিশ', 39: 'ঊনচল্লিশ', 40: 'চল্লিশ',
41: 'একচল্লিশ', 42: 'বিয়াল্লিশ', 43: 'তেতাল্লিশ', 44: 'চুয়াল্লিশ',
45: 'পঁইতাল্লিশ', 46: 'ছিচল্লিশ', 47: 'সাতচল্লিশ', 48: 'আটচল্লিশ',
49: 'ঊনপঞ্চাশ', 50: 'পঞ্চাশ', 51: 'একান্ন', 52: 'বায়ান্ন',
53: 'তিপ্পান্ন', 54: 'চুয়ান্ন', 55: 'পঞ্চান্ন', 56: 'ছাপ্পান্ন',
57: 'সাতান্ন', 58: 'আটান্ন', 59: 'ঊনষাট', 60: 'ষাট', 61: 'একষট্টি',
62: 'বাষট্টি', 63: 'তেষট্টি', 64: 'চৌষট্টি', 65: 'পঁইষট্টি',
66: 'ছেষট্টি', 67: 'সাতষট্টি', 68: 'আটষট্টি', 69: 'ঊনসত্তর',
70: 'সত্তর', 71: 'একাত্তর', 72: 'বাহাত্তর', 73: 'তিয়াত্তর',
74: 'চুয়াত্তর', 75: 'পঁচাত্তর', 76: 'ছিয়াত্তর', 77: 'সাতাত্তর',
78: 'আটাত্তর', 79: 'ঊনআশি', 80: 'আশি', 81: 'একাশি', 82: 'বিরাশি',
83: 'তিরাশি', 84: 'চুরাশি', 85: 'পঁচাশি', 86: 'ছিয়াশি',
87: 'সাতাশি', 88: 'আটাশি', 89: 'ঊননব্বই', 90: 'নব্বই',
91: 'একানব্বই', 92: 'বিরানব্বই', 93: 'তিরানব্বই', 94: 'চুরানব্বই',
95: 'পঁচানব্বই', 96: 'ছিয়ানব্বই', 97: 'সাতানব্বই', 98: 'আটানব্বই',
99: 'নিরানব্বই', 100: 'একশত'
};
function inWords(num) {
if (num < 0) {
return 'নেতিবাচক সংখ্যা';
}
let integerPart = Math.floor(num);
let decimalPart = Math.round((num - integerPart) * 100);
let str = '';
const crore = Math.floor(integerPart / 10000000);
const lakh = Math.floor((integerPart % 10000000) / 100000);
const thousand = Math.floor((integerPart % 100000) / 1000);
const hundred = Math.floor((integerPart % 1000) / 100);
const units = integerPart % 100;
if (crore > 0) str += banglaNumbers[crore] + ' কোটি ';
if (lakh > 0) str += banglaNumbers[lakh] + ' লাখ ';
if (thousand > 0) str += banglaNumbers[thousand] + ' হাজার ';
if (hundred > 0) {
str += banglaNumbers[hundred] + 'শত ';
}
if (units > 0) str += banglaNumbers[units];
str = str.trim();
let paisaStr = '';
if (decimalPart > 0) {
paisaStr = 'এবং ' + banglaNumbers[decimalPart] + ' পয়সা';
}
return str + (paisaStr ? ' টাকা ' + paisaStr : ' টাকা');
}
// jQuery Usage Example
// function showBanglaCurrencyWords(amount) {
// let output = '';
// if (!isNaN(amount) && amount !== '') {
// let numericAmount = parseFloat(amount);
// output = inWords(numericAmount);
// }
// $("#taka_in_word").text(output);
// }
// JS Usage Example
// document.addEventListener('DOMContentLoaded', function () {
// const amountInput = document.getElementById('amount');
// const outputEl = document.getElementById('taka_in_word');
// amountInput.addEventListener('input', function () {
// const amount = amountInput.value;
// let output = '';
// if (!isNaN(amount) && amount !== '') {
// const numericAmount = parseFloat(amount);
// output = inWords(numericAmount);
// }
// outputEl.textContent = output;
// });
// });
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment