JS实现的4种数字千位符格式化方法分享

下面是JS实现的4种数字千位符格式化方法分享的详细攻略。

1. 使用toLocaleString()

可以使用toLocaleString()方法来实现数字千位符格式化。这个方法是JavaScript内置的方法,可以将数字转化为本地字符串格式。

let num = 1234567.89;
console.log(num.toLocaleString());  //输出1,234,567.89

2. 使用正则表达式

除了使用本地方法,还可以使用正则表达式来实现数字千位符格式化。

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

let num = 1234567.89;
console.log(numberFormat(num));  //输出1,234,567.89

3. 使用Intl.NumberFormat()

也可以使用ES6中引入的Intl.NumberFormat()方法,这个方法可以更灵活地实现数字千位符格式化,支持自定义小数点和千位符分隔符。

let num = 1234567.89;
let formatter = new Intl.NumberFormat('en-US', {
  minimumFractionDigits: 2,
  maximumFractionDigits: 2
});
console.log(formatter.format(num));  //输出1,234,567.89

4. 使用递归

最后一种方法是使用递归来实现数字千位符格式化,具体实现是每隔3位就插入千位符,直到处理到整数部分结束。

function addCommas(num) {
  if (num.length <= 3) {
    return num;
  } else {
    return addCommas(num.slice(0, num.length - 3)) + ',' + num.slice(num.length - 3);
  }
}

let num = '1234567.89';
console.log(addCommas(num));  //输出1,234,567.89

以上就是四种JS实现的数字千位符格式化方法,希望这篇攻略能对你有所帮助。

示例1:使用toLocaleString()方法对数字99999.99进行千位符格式化。

let num = 99999.99;
console.log(num.toLocaleString());  //输出99,999.99

示例2:使用递归方法对数字9876543210.1234进行千位符格式化。

function addCommas(num) {
  if (num.length <= 3) {
    return num;
  } else {
    return addCommas(num.slice(0, num.length - 3)) + ',' + num.slice(num.length - 3);
  }
}

let num = '9876543210.1234';
console.log(addCommas(num));  //输出9,876,543,210.1234

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JS实现的4种数字千位符格式化方法分享 - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • jQuery ajax(复习)—Baidu ajax request分离版

    下面是 “jQuery ajax(复习)—Baidu ajax request分离版”的完整攻略。 简介 本篇攻略主要介绍如何使用jQuery发起Ajax请求,以及如何使用Baidu Ajax Request分离版优化你的Ajax请求。 Ajax基础 什么是Ajax? Ajax全称是 Asynchronous JavaScript and XML(异步的 J…

    JavaScript 2023年6月11日
    00
  • DOM3中的js textInput文本事件

    DOM3中的textInput事件详解 textInput事件是DOM3规范中新加入的文本输入事件,用于处理在元素中输入文本的情况。在此之前,开发人员通常使用keyup、keydown等事件来处理文本输入的情况,但这些事件存在一些问题,比如无法处理复制、粘贴等操作。 textInput事件的优势在于可以精确地跟踪用户的输入,并且可以在用户输入结束后触发,不需…

    JavaScript 2023年6月10日
    00
  • ion content 滚动到底部会遮住一部分视图的快速解决方法

    当使用ionic开发应用时,有时会遇到一个问题:在使用ion-content组件时,在底部出现的内容可能会被底部导航栏或者浏览器的地址栏所遮挡。这个问题可能会影响应用的用户体验,因此需要进行修复。下面是解决这个问题的一些方法。 方法一:增加scroll-padding-bottom 通过为ion-content添加scroll-padding-bottom属…

    JavaScript 2023年6月11日
    00
  • AngularJS实现表单手动验证和表单自动验证

    以下是关于“AngularJS实现表单手动验证和表单自动验证”的完整攻略: 一、表单手动验证 1.创建表单 首先,我们需要创建一个表单来进行手动验证。可以使用HTML的form标签、AngularJS的ngForm指令、ngModel指令和ngSubmit指令来完成这个步骤。 示例代码: <form name="myForm" ng…

    JavaScript 2023年6月10日
    00
  • 在页面上点击任一链接时触发一个事件的代码

    要实现在页面上点击任一链接时触发一个事件的代码,可以通过以下步骤来实现: 第一步:添加一个事件监听器 在页面中添加一个事件监听器来监听所有a标签的点击事件,代码如下: document.addEventListener(‘click’, function(event) { if (event.target.tagName === ‘A’) { // 点击事件…

    JavaScript 2023年6月11日
    00
  • javascript 小时:分钟的正则表达式

    首先,为了匹配符合“小时:分钟”格式的字符串,我们需要使用正则表达式。下面是一个简单的正则表达式: /^\d{1,2}:\d{1,2}$/ 这个正则表达式使用了^和$锚定符来确保整个字符串都与模式匹配。模式由两个数字组成,由一个冒号分隔。d{1, 2}表示可以匹配1-2位的数字。因此,模式可以匹配 1:30、10:45、21:00 等。 如果你需要限制小时必…

    JavaScript 2023年5月27日
    00
  • 基于JavaScript实现单例模式

    让我来详细讲解一下“基于JavaScript实现单例模式”的完整攻略。 什么是单例模式? 单例模式是一种设计模式,它保证一个类只有一个实例,并提供一个全局访问点来访问这个实例。在JavaScript中,由于它是一种动态语言,所以没有像Java、C++等静态语言那样的固有的单例模式实现方式,但是我们可以用JavaScript的一些语言特性来模拟出单例模式。 单…

    JavaScript 2023年6月10日
    00
  • 详细介绍HTTP Cookie

    详细介绍HTTP Cookie HTTP Cookie,通常简称Cookie,是指由Web服务器发送给客户端浏览器的一小段文本,浏览器将其存储到本地,稍后再发送给同一服务器。Cookie 可以帮助服务器记录用户的状态信息,实现用户的个性化设置,也可以保持用户登录状态,提高用户体验等。本文将详细介绍 HTTP Cookie 的相关知识点。 Cookie的组成 …

    JavaScript 2023年6月11日
    00
合作推广
合作推广
分享本页
返回顶部