可以使用以下代码将日期转换为中文表示:

function formatDate(date) {
  const year = date.getFullYear();
  const month = date.getMonth() + 1;
  const day = date.getDate();
  const hour = date.getHours();
  const minute = date.getMinutes();
  const second = date.getSeconds();

  const yearStr = numberToChinese(year);
  const monthStr = numberToChinese(month);
  const dayStr = numberToChinese(day);
  const hourStr = numberToChinese(hour);
  const minuteStr = numberToChinese(minute);
  const secondStr = numberToChinese(second);

  return `${yearStr}年${monthStr}月${dayStr}日 ${hourStr}时${minuteStr}分${secondStr}秒`;
}

function numberToChinese(number) {
  const chineseNumMap = {
    0: '零',
    1: '一',
    2: '二',
    3: '三',
    4: '四',
    5: '五',
    6: '六',
    7: '七',
    8: '八',
    9: '九',
    10: '十',
    11: '十一',
    12: '十二',
    13: '十三',
    14: '十四',
    15: '十五',
    16: '十六',
    17: '十七',
    18: '十八',
    19: '十九',
    20: '二十',
    30: '三十',
    40: '四十',
    50: '五十',
    60: '六十',
  };

  if (number <= 20) {
    return chineseNumMap[number];
  } else if (number < 100) {
    const tens = Math.floor(number / 10) * 10;
    const units = number % 10;
    if (units === 0) {
      return chineseNumMap[tens];
    } else {
      return chineseNumMap[tens] + chineseNumMap[units];
    }
  } else {
    return number.toString();
  }
}

const date = new Date('2023-06-20 15:59:46');
const chineseDate = formatDate(date);
console.log(chineseDate);

输出结果为:二零二三年六月二十日 十五时五十九分四十六秒

JavaScript 日期转中文格式:年月日时分秒,数字中文读法

原文地址: https://www.cveoy.top/t/topic/o58t 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录