1234567891011121314151617181920212223242526272829 |
- import { describe, expect, it } from "vitest";
- function toChineseNumber(num: number) {
- let ret = "";
- if (num < 10) {
- ret = num.toLocaleString("zh-u-nu-hanidec");
- } else if (num === 10) {
- ret = "十";
- } else if (num > 10 && num < 20) {
- ret = "十" + (num % 10).toLocaleString("zh-u-nu-hanidec");
- } else if (num >= 20 && num < 100) {
- const s = num
- .toLocaleString("zh-u-nu-hanidec", { useGrouping: false })
- .split("");
- s.splice(1, 0, "十");
- ret = s.join("").replace("〇", "");
- } else {
- ret = num.toLocaleString("zh-u-nu-hanidec");
- }
- return ret;
- }
- describe("toChineseNumber", () => {
- it("test number to chinese", () => {
- expect(toChineseNumber(12)).toEqual("十二");
- // expect(toChineseNumber(13)).toEqual("一十三");
- });
- });
|