当前位置:首页 > JavaScript

js实现千位符

2026-04-04 07:40:53JavaScript

方法一:使用 toLocaleString() 方法

const number = 1234567.89;
const formattedNumber = number.toLocaleString();
console.log(formattedNumber); // 输出 "1,234,567.89"

该方法会自动根据当前地区设置添加千位分隔符,默认使用逗号作为分隔符。

方法二:使用正则表达式替换

function formatNumberWithCommas(number) {
  return number.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
}

const num = 1234567;
console.log(formatNumberWithCommas(num)); // 输出 "1,234,567"

正则表达式解释:

js实现千位符

  • \B 匹配非单词边界
  • (?=(\d{3})+(?!\d)) 正向预查,匹配后面跟着3的倍数数字的位置

方法三:处理小数的情况

function formatNumber(num) {
  const parts = num.toString().split(".");
  parts[0] = parts[0].replace(/\B(?=(\d{3})+(?!\d))/g, ",");
  return parts.join(".");
}

console.log(formatNumber(1234567.89)); // 输出 "1,234,567.89"

方法四:纯数字处理方式

function addCommas(number) {
  let numStr = Math.floor(number).toString();
  let result = '';

  for (let i = numStr.length - 1, j = 0; i >= 0; i--, j++) {
    if (j > 0 && j % 3 === 0) {
      result = ',' + result;
    }
    result = numStr[i] + result;
  }

  return result;
}

console.log(addCommas(1234567)); // 输出 "1,234,567"

方法五:使用 Intl.NumberFormat

const formatter = new Intl.NumberFormat('en-US');
console.log(formatter.format(1234567)); // 输出 "1,234,567"

这种方法可以指定不同的地区格式,更加灵活国际化。

标签: js千位符
分享给朋友:

相关文章

js实现文件下载

js实现文件下载

使用 a 标签下载文件 通过动态创建 a 标签并设置 download 属性实现文件下载。适用于已知文件 URL 或 Blob 数据的情况。 function downloadFile(url, f…

js实现pdf在线预览

js实现pdf在线预览

使用PDF.js实现PDF在线预览 PDF.js是由Mozilla开发的一个开源JavaScript库,可以在网页中直接渲染PDF文件。以下是实现PDF在线预览的步骤: 引入PDF.js库 在HT…

js 实现分页

js 实现分页

实现分页的基本逻辑 分页功能通常需要后端返回数据总量或总页数,前端根据当前页码和每页条数截取对应数据。以下是一个基于JavaScript的简单分页实现方案: 前端分页实现 假设已有从后端获取的完整数…

js实现二叉树

js实现二叉树

二叉树的基本概念 二叉树是一种树形数据结构,每个节点最多有两个子节点,分别称为左子节点和右子节点。二叉树的常见操作包括插入、删除、遍历等。 二叉树的节点定义 在JavaScript中,二叉树的节点可…

链表实现js

链表实现js

链表的基本概念 链表是一种线性数据结构,由一系列节点组成,每个节点包含数据和一个指向下一个节点的指针(单向链表)或两个指针(双向链表)。与数组不同,链表在内存中非连续存储,插入和删除操作更高效,但随机…

js图片上传实现

js图片上传实现

图片上传的基本实现 使用HTML的<input type="file">元素配合JavaScript的File API实现基础图片上传功能。HTML部分需要设置accept="image/…