0.2.1 • Published 2 years ago

thainum v0.2.1

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

thainum

ไลบรารีสำหรับแปลงจำนวนตัวเลขให้เป็นคำอ่านภาษาไทย

คุณสมบัติ

  • อ่านตัวเลขได้ยาวไม่จำกัด (เฉพาะ input ชนิด string เท่านั้น)
  • อ่านหน่วยสกุลเงินบาท/สตางค์ได้
  • TypeScript Support

การติดตั้ง

$ npm install thainum --save

การใช้งาน

thainum export function 2 ตัว คือ text และ baht

import { text, baht } from "thainum";

console.log(text('1234')); // หนึ่งพันสองร้อยสามสิบสี่
console.log(baht(1234.5)); // หนึ่งพันสองร้อยสามสิบสี่บาทห้าสิบสตางค์

API Reference

text

function text(n: string | number): string;

แปลง n ให้เป็นคำอ่านภาษาไทย

ตัวอย่าง

console.log(text('1234')); // หนึ่งพันสองร้อยสามสิบสี่

baht

function baht(n: string | number, options?: BahtReadingOption): string;

แปลง n ให้เป็นคำอ่านสกุลเงินบาท/สตางค์

ตัวอย่าง

console.log(baht('1234.55')); // หนึ่งพันสองร้อยสามสิบสี่บาทห้าสิบห้าสตางค์

สำหรับ options สามารถระบุการปัดเศษของเศษสตางค์ได้ โดยใช้ property roundStang

roundStang มีค่า default เป็น true ซึ่งจะทำการปัดเศษของสตางค์ หากไม่ต้องการให้ปัดเศษ (ต้องการตัดเศษทิ้ง เอาเฉพาะ 2 หลักแรกของหน่วยสตางค์) ให้กำหนด roundStang เป็น false

ตัวอย่าง

console.log(baht('1234.558')); // หนึ่งพันสองร้อยสามสิบสี่บาทห้าสิบหกสตางค์
console.log(baht('1234.558', false)); // หนึ่งพันสองร้อยสามสิบสี่บาทห้าสิบห้าสตางค์

การอ่านตามหลักการอ่านภาษาไทย

thainum ใช้การอ่านจำนวนในแบบทางการทหาร หรือ ตามความนิยมทั่วไป

นั่นคือจะอ่านเลข 1 ในหลักหน่วยว่า เอ็ด เฉพาะที่อยู่หลังเลขหลักสิบที่เป็นเลข 1-9 เท่านั้น

แต่อ้างอิงจาก บทความของสำนักงานราชบัณฑืตยสภา ได้อธิบายตามหลักภาษาไทยไว้ว่า ต้องอ่านว่า เอ็ด เพียงอย่างเดียวเท่านั้น

ถ้าหากต้องการให้ function text และ baht อ่านตามหลักการอ่านภาษาไทยอย่างถูกต้อง ก็ให้กำหนด options ลงไป โดยระบุ property formalReading ให้มีค่าเป็น true

ตัวอย่าง

console.log(text('1001', { formalReading: true })); // หนึ่งพันเอ็ด
console.log(baht('1001', { formalReading: true })); // หนึ่งพันเอ็ดบาทถ้วน
0.2.1

2 years ago

0.1.2

2 years ago

0.1.1

2 years ago

0.1.0

2 years ago