`
阅读更多

 

【实例代码】:

 

var Number = {
	/**
	 * 将数值四舍五入(保留2位小数)后格式化成金额形式
	 * 
	 * @param num
	 *            数值(Number或者String)
	 * @return 金额格式的字符串,如'1,234,567.45'
	 * @type String
	 */
	formatCurrency2:function(num){
		if(!num || isNaN(num)){
			num ="0.00";
		}
		 num = num.toString().replace(/\$|\,/g,'');
		 sign =(num ==(num =Math.abs(num)));
		 num =Math.floor(num*100+0.50000000001);
		 cents = num%100;
		 num = Math.floor(num/100).toString();if(cents<10)
		 cents ="0"+ cents;
		 for(var i =0; i <Math.floor((num.length-(1+i))/3); i++){
			num = num.substring(0,num.length-(4*i+3))+','+ num.substring(num.length-(4*i+3));
		 }
		 return(((sign)?'':'-')+ num +'.'+ cents);
	},

	/**
	 * 将数值四舍五入(保留1位小数)后格式化成金额形式
	 * 
	 * @param num
	 *            数值(Number或者String)
	 * @return 金额格式的字符串,如'1,234,567.4'
	 * @type String
	 */
	formatCurrency1:function(num){
		if(!num || isNaN(num)){
			num ="0.0";
		}
		num = num.toString().replace(/\$|\,/g,'');
		sign =(num ==(num =Math.abs(num)));
		num =Math.floor(num*10+0.50000000001);
		cents = num%10;
		num =Math.floor(num/10).toString();
		for(var i =0; i <Math.floor((num.length-(1+i))/3); i++){
			num = num.substring(0,num.length-(4*i+3))+','+ num.substring(num.length-(4*i+3));
		}
		return(((sign)?'':'-')+ num +'.'+ cents);
	},
	formatCurrency:function(num){
		if(!num || isNaN(num)){
			num ="0.00";
		}
		var t = num, i, r;debugger;
		for( t = t.toString().replace(/^(\d*)$/,"$1."), t =(t +"00").replace(/(\d*\.\d\d)\d*/,"$1"), t = t.replace(".",","), i =/(\d)(\d{3},)/; i.test(t);){
			t = t.replace(i,"$1,$2");
		}
		return t = t.replace(/,(\d\d)$/,".$1"), r = t.split("."), r[1]=="00"&&(t = r[0]), t 
	}
};

 

 

【测试代码】:

 

console.info(Number.formatCurrency2(123232));
console.info(Number.formatCurrency2());
console.info(Number.formatCurrency2(''));
console.info(Number.formatCurrency2(""));
console.info(Number.formatCurrency1(123232));
console.info(Number.formatCurrency1());
console.info(Number.formatCurrency1(''));
console.info(Number.formatCurrency1(""));
console.info(Number.formatCurrency(123232.999));
console.info(Number.formatCurrency());
console.info(Number.formatCurrency(''));
console.info(Number.formatCurrency(""));

 

【打印结果】:

 

123,232.00
0.00
0.00
0.00
123,232.0
0.0
0.0
0.0
123,232.99
0.00
0.00
0.00

 

 

捐助分享者

          以前并不喜欢编程,但是现在已经是一个为程序而痴迷的IT迷,在此分享一些自己整理并优化后的东西,希望能给IT迷们有所帮助,有欣喜,也还有汗水,同时也希望大家能支持一下。 当然,有钱捧个钱场(支持支付宝和微信捐助,加入it资料中心扣扣群),没钱捧个人场,有了大家的支持,我们会更有动力,会做的更好的,谢谢各位。

 

分享到:
评论

相关推荐

    采用js实现具有复杂字符串的格式化操作类库函数

    4. **日期和货币格式化**:可能内置了对JavaScript的`Date`对象和货币数值的支持,提供格式化日期和货币的方法,例如 `formatDate` 和 `formatCurrency`。 5. **转换为字符串**:当所有操作完成时,`toString` 方法...

    Javascript将数字转化成为货币格式字符串_.docx

    在JavaScript编程中,有时我们需要将数字格式化为货币样式,以方便展示给用户。这篇文章主要讲解了两种在JavaScript中将数字转化为货币格式字符串的...在编写涉及货币格式化的JavaScript代码时,可以灵活运用这些技巧。

    javascript版BigDecimal类库

    5. **格式化输出**:可以将`BigDecimal`对象转换为字符串,支持定制小数位数、千位分隔符、货币符号等格式。 6. **数学函数**:提供如平方根(`sqrt`)、指数(`pow`)、取模(`mod`)等数学运算,确保结果的高精度...

    cleavejs当你输入时自动格式化输入的文本内容

    1. **实时格式化**: cleave.js 可以在用户输入时即时地对输入内容进行格式化,例如将电话号码以`-`分隔,或者货币以特定符号和小数点表示。 2. **多种数据类型支持**:该库提供了对不同数据类型的内置支持,包括...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part2

    实例097 货币数据的格式化输出 130 实例098 日期、时间的格式化输出 131 实例099 比对论坛中帖子的相似度 132 实例100 对用户注册的密码进行加密和解密 132 实例101 保护URL地址中传递的参数 133 实例102 解析URL...

    AngularJs入门学习实例

    7. **过滤器**:过滤器用于格式化或转换数据,如日期格式化、货币格式化等。在表达式中使用管道符号(|)即可应用过滤器。 在"AngularDemo"这个压缩包中,可能包含了以下内容: - HTML文件:展示了如何在页面中...

    PHP实例开发源码——php在线最新货币查询转换工具.zip

    8. **货币格式化**:显示货币值时,可能需要使用PHP的number_format函数,以确保数值按照正确的货币格式展示,例如添加逗号分隔符和货币符号。 9. **用户界面设计**:UI设计应该简洁易用,包含货币选择下拉菜单、...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part1

    实例097 货币数据的格式化输出 130 实例098 日期、时间的格式化输出 131 实例099 比对论坛中帖子的相似度 132 实例100 对用户注册的密码进行加密和解密 132 实例101 保护URL地址中传递的参数 133 实例102 解析URL...

    PHP实例开发源码—php在线最新货币查询转换工具.zip

    8. **货币符号和格式化**:程序可能包含对货币符号的处理,以及根据用户设置或国际标准格式化数字的功能。 9. **安全考虑**:在实际应用中,需要考虑输入验证,防止XSS、SQL注入等安全问题。 10. **性能优化**:...

    一个基于C#+ASP.NET实现的Localizable Currency TextBox货币本地化显示控件源码

    这个“基于C#+ASP.NET实现的Localizable Currency TextBox货币本地化显示控件”就是一个很好的实例,它旨在帮助开发者创建能够动态适应不同货币格式的输入框。 首先,我们来理解什么是C#和ASP.NET。C#是一种面向...

    TradingViewjs是一个交互性强大的K线图表库

    TradingView.js是一个专为金融数据可视化设计的JavaScript库,它为开发者提供了丰富的工具来创建具有高度交互性和专业外观的K线图表。这个库特别适用于股票、期货、外汇市场的数据分析和展示,同时也支持加密货币等...

    js对数字的格式化使用说明

    JavaScript作为前端编程语言,虽然原生支持一些基本的数字格式化方法,但对于更复杂的格式化需求,则需要借助额外的库或自定义函数来实现。下面我将根据提供的文件内容,详细解释如何在JavaScript中使用内置对象和...

    JsStringTool_more_platform.js.zip

    3. **货币格式化**:对于涉及货币的展示,工具类可能支持根据用户所在地区自动转换货币符号和格式。 4. **数字格式化**:根据国际标准,不同地区对数字的分隔符和小数点有不同的习惯,工具类可能包含将数字格式化为...

    jQuery 国际化 实例

    这个插件通常与一个名为“Globalize”的库一起使用,Globalize 提供了处理日期、数字、货币和字符串格式化等本地化功能。 ### 2. 使用步骤 #### 2.1 引入依赖 首先,你需要在HTML文件中引入jQuery、jQuery i18n ...

    change.js:一个以美分交易的愚蠢的简单货币计算库

    货币格式和舍入可以通过依赖注入进行自定义。设置需要Change 导出一个函数以支持将依赖项作为参数注入。 当您不想自定义任何内容时,这仅意味着您需要在需要时不带参数地调用它: var Change = require ( 'change-...

    js K线图 KLine js源码 与okex网站一致

    `js K线图`是利用JavaScript编程语言实现的K线图绘制库,它能够帮助开发者在网页上创建动态、交互式的K线图表,以便用户进行交易分析。`Kline js`是这种实现的一个实例,它可能具有高效、灵活和易于定制的特点。 K...

    angular.js-1.6.9

    7. **过滤器**:过滤器用于数据格式化,如日期格式化、货币转换等。1.6.9版本提供了多种内置过滤器,如`date`、`currency`等,也可以自定义过滤器以适应个性化需求。 8. **路由**:AngularJS的路由功能(ngRoute...

    JS实现的数字格式化功能示例

    本文通过一个具体的实例来讲解如何使用JavaScript实现数字格式化功能。 首先,我们来看提供的代码示例。这是一个名为`num2money`的函数,该函数接收两个参数:`n`代表要格式化的数字或数字字符串,`s`则用于指定要...

Global site tag (gtag.js) - Google Analytics