ASP:使用Formatnumber()和Formatpercent()格式化数字 把数据库中 0.XX 小数点前的"0."显示出来
VBScript有两个用于格式化数字的负数。用函数Formatnumber(),你能指定小数点后的显示位数,是否显示前导的零,显示负数时是否使用空格,和是否使用分隔符等。下面是一些例子及其返回值:
<%=Formatnumber(6665.8999)%>
6,665.90
<%=Formatnumber(“6665.8999”)%>
6,665.90
<%=Formatnumber(6665.8999,3)%>
6,665.900
<%=Formatnumber(-6665.8999,3,-1,-1,0)%>
(6665.900)
注意第二个例子用了一个字符串,二不是数字。当一个字符串能被解释为一个数字时,你能用该字符串作为函数Formatnumber()的参数。如果该字符串不能被解释为数字,则会返回错误。
最后一个例子用到了函数Formatnumber()的所有参数:
第一个参数(-6665.8999)指定了要进行格式化的数字。
第二个参数(3)指定了小数点后显示的位数。
第三个参数(-1)指定了是否显示前导的零。
第四个参数(-1)指定是否对负数使用括号。
最后一个参数(0)指定是否显示分隔符。
注意
许多VBScript函数使用三态常量。函数Formatnumber()的第三,第四,第五个参数能接受三态常量或他们的值。下面列出了三态常量:
TristateTrue -1 True
TristateFalse 0 False
TristateUseDefault -2 使用区域设置
你也能指定这些格式的某个特定属性依赖于视窗系统控制面板中的区域设置。
如果你需要格式化百分数,应使用函数Formatpercent():
<%=Formatpercent(12)%>
1,200.00%
<%=Formatpercent(“12”)%>
1,200.00%
这个函数把他的第一个参数乘以100,并在结果后面追加一个百分号。函数Formatpercent()也能接受许多附加参数,以改动输出格式。
==========================================
在修改商城程序的时候,价格通常是XXX.00元 这样的形式显示的,而小于1的价格必然0.98在用asp输出的时候,程序自动省略了小数点前面的“0”,怎么显示小数点前的“0”?
asp中用 formatNumber 函数
比如:
<%
dim a
a = 0.98
response.write a & "<br />" '正常输出
document.write FormatNumber(a, 2, -1) '格式化输出
%>
以上程序中 FormatNumber(a, 2, -1) 中的“2” 代表的是输出小数点后2为数,如果要输出小数点后4为数则写为 FormatNumber(a, 4, -1)
FormatNumber(a, 2, -1) 中的“-1”代表指的是否显示小数值小数点前面的零。-1表示true,0代表false,所以这样写也是对的:FormatNumber(a, 1, true) ,当然如果这里的“-1”改为“-2”也是对的,表示的是服务器默认参数,改为其它的则会显示语法错误了。
希望对了解这方面的程序员有所帮助!
