数字的千分位格式化方法

方法一:数组(字串)循环法

 1 function toThousands(num) {
 2     var result = [ ], counter = 0;
 3     num = (num || 0).toString().split(‘‘);
 4     for (var i = num.length - 1; i >= 0; i--) {
 5         counter++;
 6         result.unshift(num[i]);
 7         if (!(counter % 3) && i != 0) {
 8                 result.unshift(‘,‘);
 9         }
10     }
11     return result.join(‘‘);
12 }
 1 function toThousands(num) {
 2     var result = ‘‘, counter = 0;
 3     num = (num || 0).toString();
 4     for (var i = num.length - 1; i >= 0; i--) {
 5         counter++;
 6         result = num.charAt(i) + result;
 7         if (!(counter % 3) && i != 0) {
 8                 result = ‘,‘ + result;
 9         }
10     }
11     return result;
12 }

方法二:字串截取法

 1 function toThousands(num) {
 2     var num = (num || 0).toString(), result = ‘‘;
 3     while (num.length > 3) {
 4         result = ‘,‘ + num.slice(-3) + result;
 5         num = num.slice(0, num.length - 3);
 6     }
 7     if (num) {
 8         result = num + result;
 9     }
10     return result;
11 }

方法三:正则表达式法

1 function toThousands(num) {
2     return (num || 0).toString().replace(/(\d)(?=(?:\d{3})+$)/g, ‘$1,‘);
3 }

方法四:转换格式法

1 function toThousands(num) {
2     return (num || 0).toLocaleString(‘en-US‘);
3 }
时间: 2024-08-10 19:17:03

数字的千分位格式化方法的相关文章

JavaScript数值千分位格式化的两种方法

在对数值进行格式化的时候,一个常见的问题是按照千分位格式化,网上对这个问题已经有很多种解决方法了,还可以利用Array.prototype.reduce方法来实现千分位格式化. function formatNumber(num) { if (isNaN(num)) { throw new TypeError("num is not a number"); } var groups = (/([\-\+]?)(\d*)(\.\d+)?/g).exec("" + nu

两种方法解决数字加千分位问题(没考虑负数和小数)

问题描述:数字加千分位:要求用户输入一个整数,编写一个方法,方法将将整数转换为一个从低位开始每三位一个逗号的“千分位”字符串表示形式. //正向解法 package ThirdTest;import java.util.Scanner;public class No2{ public static void main(String[] args) { Scanner sc=new Scanner(System.in); int num=sc.nextInt(); thousand(num); s

[js开源组件开发]数字或金额千分位格式化组件

数字或金额千分位格式化组件 这次距离上一个组件<[js开源组件开发]table表格组件>时隔了一个月,由于最近的项目比较坑,刚挖完坑,所以来总结性提出来几个组件弥补这次的空缺,首先是金额和数字的千分位和小数点控制的组件,它的作用主要是在输入框时限制输入的内容为数字.也可以用于普通标签的数字格式化,效果如下图: demo演示地址请点击 http://www.lovewebgames.com/jsmodule/format-number.html 源码github托管地址请点击https://gi

sql为数字添加千分位(也就是钱的格式)

感觉这个东西在项目中用得挺多的,之前在前台页面是用正则来处理,现在由于是数据查询,所以直接在查出数据的时候将其转为指定的千分位格式,省的前台再处理,不讲原理,因为我也看不懂,不过会用就行了,在网上找了下,现在自己记录下,方便自己查看. Sql获取数字的千分位,就是将一个数字以三位,用逗号隔开,sql代码如下: (1)不带小数点: select reverse(stuff(reverse(convert(varchar,convert(money,1234333000),1)),1,3,''))

表格内数字按千分位进行格式化

方法一: DisplayInputFormat.DisplayInputFormat(webBean, "DepositAmountTE", ON_SUBMIT_VALIDATER_ATTR); public static void DisplayInputFormat(OAWebBean webBean,String lv_findchild,oracle.cabo.ui.AttributeKey key) { //Added by Tommy on 2012-09-08 for R

从千分位格式化谈JS性能优化

所谓的千分位形式,即从个位数起,每三位之间加一个逗号.例如“10,000”.针对这个需求,我起初写了这样一个函数: // 方法一function toThousands(num) {var result = [ ], counter = 0;num = (num || 0).toString().split('');for (var i = num.length - 1; i >= 0; i--) {counter++;result.unshift(num[i]);if (!(counter %

Js笔试题之千分位格式化

用js实现如下功能,将给定的数字转化成千分位的格式,如把“10000”转化成“10,000”,并考虑到性能方面的因素. 一.首先想到的办法,将数字转换为字符串(toString())再打散成数组(split),如果直接数字转换为数组,就是一整个放进去了,不能单独取到每一位.然后通过循环,逐个倒着把数组中的元素插入到新数组的开头(unshift),第三次或三的倍数次,插入逗号,最后把新数组拼接成一个字符串 n=1233456; toQfw(n); function toQfw(){ var arr

ios中数字的格式化(金额千分位格式化显示)

通过NSNumberFormatter,设置NSNumber输出的格式 NSNumberFormatter *formatter = [[NSNumberFormatteralloc]init]; formatter.numberStyle =NSNumberFormatterDecimalStyle; NSString *newAmount = [formatterstringFromNumber:[NSNumbernumberWithint:123456789]]; (注意传入参数的数据长度

千分位格式化数字

import java.text.*; //格式化数字 public class number { public static void main(String args[]) { double d = 123456.78; DecimalFormat df = new DecimalFormat("###,###"); System.out.println(df.format(d)); } }