Read Numbers to Khmer Words Online:
Convert Numbers to Khmer Words
Khmer Number System:
10 = ten = ដប់
100 = hundred = រយ
1000 = thousand = ពាន់
10000 = Ten thousand = ម៉ឺន
100000 = Hundred thousand = សែន
1000000 = million = លាន
10000000 = ten million = កោដិ
100000000 = Hundred million = ដប់កោដិ
1000000000 = billion = រយកោដិ
10000000000 = ten billion = ពាន់កោដិ
100000000000 = hundred billion = ម៉ឺនកោដិ
To convert data to words in Khmer using JavaScript and HTML, you need to create a script that handles the conversion logic. Here’s a basic example to get you started:
HTML: Create a simple interface with an input field and a button to trigger the conversion.
<!DOCTYPE html>
<html lang="km">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Convert Numbers to Khmer Words</title>
<style>
body {
font-family: Arial, sans-serif;
margin: 20px;
}
input, button {
padding: 10px;
margin: 5px 0;
}
button {
cursor: pointer;
}
</style>
</head>
<body>
<h1>Convert Numbers to Khmer Words</h1>
<input type="text" id="numberInput" placeholder="Enter a number">
<button onclick="convertToKhmerWords()">Convert</button>
<p id="result"></p>
</body>
</html>
JavaScript: Write a function that converts numbers to Khmer words. You can use a predefined dictionary for numbers and concatenate them as needed.
<script>
const khmerDigits = ["សូន្យ", "មួយ", "ពីរ", "បី", "បួន", "ប្រាំ", "ប្រាំមួយ", "ប្រាំពីរ", "ប្រាំបី", "ប្រាំបួន"];
const khmerTens = ["", "ដប់", "ម្ភៃ", "សាមសិប", "សែសិប", "ហាសិប", "ហុកសិប", "ចិតសិប", "ប៉ែតសិប", "កៅសិប"];
const khmerHundreds = ["", "មួយរយ", "ពីរយ", "បីរយ", "បួនរយ", "ប្រាំរយ", "ប្រាំមួយរយ", "ប្រាំពីរយ", "ប្រាំបីរយ", "ប្រាំបួនរយ"];
const khmerThousands = ["", "មួយពាន់", "ពីរពាន់", "បីពាន់", "បួនពាន់", "ប្រាំពាន់", "ប្រាំមួយពាន់", "ប្រាំពីរពាន់", "ប្រាំបីពាន់", "ប្រាំបួនពាន់"];
const khmerTenThousands = ["", "មួយម៉ឺន", "ពីរម៉ឺន", "បីម៉ឺន", "បួនម៉ឺន", "ប្រាំម៉ឺន", "ប្រាំមួយម៉ឺន", "ប្រាំពីរម៉ឺន", "ប្រាំបីម៉ឺន", "ប្រាំបួនម៉ឺន"];
const khmerHundredThousands = ["", "មួយសែន", "ពីរសែន", "បីសែន", "បួនសែន", "ប្រាំសែន", "ប្រាំមួយសែន", "ប្រាំពីរសែន", "ប្រាំបីសែន", "ប្រាំបួនសែន"];
const khmerMillions = ["", "មួយលាន", "ពីរលាន", "បីលាន", "បួនលាន", "ប្រាំលាន", "ប្រាំមួយលាន", "ប្រាំពីរលាន", "ប្រាំបីលាន", "ប្រាំបួនលាន"];
const khmerBillions = ["", "មួយកោដិ", "ពីរកោដិ", "បីកោដិ", "បួនកោដិ", "ប្រាំកោដិ", "ប្រាំមួយកោដិ", "ប្រាំពីរកោដិ", "ប្រាំបីកោដិ", "ប្រាំបួនកោដិ"];
function convertToKhmerWords() {
const number = document.getElementById('numberInput').value;
const resultElement = document.getElementById('result');
if (isNaN(number) || number === "") {
resultElement.innerHTML = "Please enter a valid number";
return;
}
const khmerWords = numberToKhmerWords(Number(number));
resultElement.innerHTML = khmerWords.trim();
}
function numberToKhmerWords(number) {
if (number == 0) return khmerDigits[0];
let words = "";
let tenthousandBillion = Math.floor(number / 100000000000);
number %= 100000000000;
let thousandBillion = Math.floor(number / 10000000000);
number %= 10000000000;
let hundredBillion = Math.floor(number / 1000000000);
number %= 1000000000;
let tenBillion = Math.floor(number / 100000000);
number %= 100000000;
let billion = Math.floor(number / 10000000);
number %= 10000000;
let million = Math.floor(number / 1000000);
number %= 1000000;
let hundredThousand = Math.floor(number / 100000);
number %= 100000;
let tenThousand = Math.floor(number / 10000);
number %= 10000;
let thousand = Math.floor(number / 1000);
number %= 1000;
let hundred = Math.floor(number / 100);
number %= 100;
let ten = Math.floor(number / 10);
let unit = number % 10;
if (tenthousandBillion > 0) {
words += khmerTenThousands[tenthousandBillion] + " ";
}
if (thousandBillion > 0) {
words += khmerThousands[thousandBillion] + " ";
}
if (hundredBillion > 0) {
words += khmerHundreds[hundredBillion] + " ";
}
if (tenBillion > 0) {
words += khmerTens[tenBillion] + " ";
}
if (billion > 0) {
words += khmerBillions[billion] + " ";
}
if (million > 0) {
words += khmerMillions[million] + " ";
}
if (hundredThousand > 0) {
words += khmerHundredThousands[hundredThousand] + " ";
}
if (tenThousand > 0) {
words += khmerTenThousands[tenThousand] + " ";
}
if (thousand > 0) {
words += khmerThousands[thousand] + " ";
}
if (hundred > 0) {
words += khmerHundreds[hundred] + " ";
}
if (ten > 0) {
words += khmerTens[ten] + " ";
}
if (unit > 0) {
words += khmerDigits[unit] + " ";
}
return words.trim();
}
</script>
Here is a complete example:
Copy this code and then paste to Notepad, save as html file (.html extension). You open the html file a browser.
<!DOCTYPE html>
<html lang="km">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Convert Numbers to Khmer Words</title>
<style>
body {
font-family: Arial, sans-serif;
margin: 20px;
}
input, button {
padding: 10px;
margin: 5px 0;
}
button {
cursor: pointer;
}
</style>
</head>
<body>
<h1>Convert Numbers to Khmer Words</h1>
<input type="text" id="numberInput" placeholder="Enter a number">
<button onclick="convertToKhmerWords()">Convert</button>
<p id="result"></p>
<script>
const khmerDigits = ["សូន្យ", "មួយ", "ពីរ", "បី", "បួន", "ប្រាំ", "ប្រាំមួយ", "ប្រាំពីរ", "ប្រាំបី", "ប្រាំបួន"];
const khmerTens = ["", "ដប់", "ម្ភៃ", "សាមសិប", "សែសិប", "ហាសិប", "ហុកសិប", "ចិតសិប", "ប៉ែតសិប", "កៅសិប"];
const khmerHundreds = ["", "មួយរយ", "ពីរយ", "បីរយ", "បួនរយ", "ប្រាំរយ", "ប្រាំមួយរយ", "ប្រាំពីរយ", "ប្រាំបីរយ", "ប្រាំបួនរយ"];
const khmerThousands = ["", "មួយពាន់", "ពីរពាន់", "បីពាន់", "បួនពាន់", "ប្រាំពាន់", "ប្រាំមួយពាន់", "ប្រាំពីរពាន់", "ប្រាំបីពាន់", "ប្រាំបួនពាន់"];
const khmerTenThousands = ["", "មួយម៉ឺន", "ពីរម៉ឺន", "បីម៉ឺន", "បួនម៉ឺន", "ប្រាំម៉ឺន", "ប្រាំមួយម៉ឺន", "ប្រាំពីរម៉ឺន", "ប្រាំបីម៉ឺន", "ប្រាំបួនម៉ឺន"];
const khmerHundredThousands = ["", "មួយសែន", "ពីរសែន", "បីសែន", "បួនសែន", "ប្រាំសែន", "ប្រាំមួយសែន", "ប្រាំពីរសែន", "ប្រាំបីសែន", "ប្រាំបួនសែន"];
const khmerMillions = ["", "មួយលាន", "ពីរលាន", "បីលាន", "បួនលាន", "ប្រាំលាន", "ប្រាំមួយលាន", "ប្រាំពីរលាន", "ប្រាំបីលាន", "ប្រាំបួនលាន"];
const khmerBillions = ["", "មួយកោដិ", "ពីរកោដិ", "បីកោដិ", "បួនកោដិ", "ប្រាំកោដិ", "ប្រាំមួយកោដិ", "ប្រាំពីរកោដិ", "ប្រាំបីកោដិ", "ប្រាំបួនកោដិ"];
function convertToKhmerWords() {
const number = document.getElementById('numberInput').value;
const resultElement = document.getElementById('result');
if (isNaN(number) || number === "") {
resultElement.innerHTML = "Please enter a valid number";
return;
}
const khmerWords = numberToKhmerWords(Number(number));
resultElement.innerHTML = khmerWords.trim();
}
function numberToKhmerWords(number) {
if (number == 0) return khmerDigits[0];
let words = "";
let tenthousandBillion = Math.floor(number / 100000000000);
number %= 100000000000;
let thousandBillion = Math.floor(number / 10000000000);
number %= 10000000000;
let hundredBillion = Math.floor(number / 1000000000);
number %= 1000000000;
let tenBillion = Math.floor(number / 100000000);
number %= 100000000;
let billion = Math.floor(number / 10000000);
number %= 10000000;
let million = Math.floor(number / 1000000);
number %= 1000000;
let hundredThousand = Math.floor(number / 100000);
number %= 100000;
let tenThousand = Math.floor(number / 10000);
number %= 10000;
let thousand = Math.floor(number / 1000);
number %= 1000;
let hundred = Math.floor(number / 100);
number %= 100;
let ten = Math.floor(number / 10);
let unit = number % 10;
if (tenthousandBillion > 0) {
words += khmerTenThousands[tenthousandBillion] + " ";
}
if (thousandBillion > 0) {
words += khmerThousands[thousandBillion] + " ";
}
if (hundredBillion > 0) {
words += khmerHundreds[hundredBillion] + " ";
}
if (tenBillion > 0) {
words += khmerTens[tenBillion] + " ";
}
if (billion > 0) {
words += khmerBillions[billion] + " ";
}
if (million > 0) {
words += khmerMillions[million] + " ";
}
if (hundredThousand > 0) {
words += khmerHundredThousands[hundredThousand] + " ";
}
if (tenThousand > 0) {
words += khmerTenThousands[tenThousand] + " ";
}
if (thousand > 0) {
words += khmerThousands[thousand] + " ";
}
if (hundred > 0) {
words += khmerHundreds[hundred] + " ";
}
if (ten > 0) {
words += khmerTens[ten] + " ";
}
if (unit > 0) {
words += khmerDigits[unit] + " ";
}
return words.trim();
}
</script>
</body>
</html>
Related Articles:
- Automatically Setting the Current Date and Time in an HTML Form
- How to Create a Spinner with Loading Data Percentage in DataTables
- Convert Numbers to Khmer Number System Words (HTML+JAVASCRIPT)
- Converting Numbers to Words in JavaScript
- Create Login Form Using HTML, CSS, JavaScript
- JavaScript – Create Notes App