JavaScript 将字符串转换成数值(整数or浮点数)收藏

JavaScript 将字符串转换成数值(整数or浮点数
JavaScript 将字符串转换成数值(整数or浮点数)
2007-04-16 11:13
从input中取出的value字符串进行加减乘除操作时需要首先进行数值转换,比如: 
var height = 20;
var addvalue = document.formname.addheight.value;
var newheight = height+addvalue;

如果在addheight中输入的值为13,则计算出来的newheight为2013,而我们期望的值为33,所以需要将字符串转化成数值,可以采用的方法是parseInt

上面的代码转换成如下内容就可以了:

var newheight = height+parseInt(addvalue);

如果带有小数的话,则需要采用方法parseFloat,否则小数将被忽略。

parseInt方法介绍摘抄如下:

The parseInt() function parses a string and returns an integer.

The radix parameter is used to specify which numeral system to be used, for example, a radix of 16 (hexadecimal) indicates that the number in the string should be parsed from a hexadecimal number to a decimal number.

If the radix parameter is omitted, JavaScript assumes the following:

If the string begins with "0x", the radix is 16 (hexadecimal) 
If the string begins with "0", the radix is 8 (octal). This feature is deprecated 
If the string begins with any other value, the radix is 10 (decimal) 
parseInt(string, radix)

string    Required. The string to be parsed 
radix     Optional. A number (from 2 to 36) that represents the numeral system to be used 
From:http://bitiliu.bokee.com/5668880.html

JavaScript 数据类型转换/replace/特殊字符

1.数据类型转换

JavaScript有两种数据类型的转换方法:一种是将整个值从一种类型转换为另一种数据类型(称作基本数据类型转换),另一种方法是从一个值中提取另一种类型的值,并完成转换工作。

基本数据类型转换的三种方法:
1.转换为字符型:String(); 例:String(678)的结果为"678" 
2.转换为数值型:Number(); 例:Number("678")的结果为678 
3.转换为布尔型:Boolean(); 例:Boolean("aaa")的结果为true

从一个值中提取另一种类型的值的方法:
1.提取字符串中的整数:parseInt(); 例:parseInt("123zhang")的结果为123 
2.提取字符串中的浮点数:parseFloat(); 例:parseFloat("0.55zhang")的结果为0.55 
3.执行用字符串表示的一段javascript代码:eval(); 例:zhang=eval("1+1")的结果zhang=2

附录: 
a. parseInt("09") 以0开头的话会自动转换成8进制格式,要规定转化成10进制的需要 parseInt("09",10) b. parseFloat 转换成浮点数 parseInt 转换成整数.
这两个函数都有些容错性的,比如"123abc"会变成123.
如果楼主希望更准确一些,其实可以判断一下,然后用eval,不过也可以使用这样的方法:
var a = "234" ;
a = a.replace(/(^[\\s]*)|([\\s]*$)/g, "");
if( a !="" && !isNaN( a ) )
{//如果是数字
a = eval( a )
}
else
{//如果不是数字
a = null
}


--------------------------------------------------------------------------------

2.replace函数[转]

今天要在javascript中将一个字符串里的所有的,替换成',',结果发现只能替换掉一个,后来查了一下才回忆起来javascript中的replace只能替换掉第一个匹配项。

网上提供的方法主要有两种,一种为通过indexof查看是否还存在匹配项,然后写循环替换,这样也很好。

更好的方案是通过写正则表达式来解决这个问题,replace(/要匹配的字符串/g,要替换的字符串)

网上的帖子大都是互相转载的,居的例子都是一个replace(/\-/g,'!'),但是如果要匹配的字符串长度大于1,究竟怎样写呢。

其实很简单,如果需要匹配的字符串只是字母一类的,例如abcde,那就可以直接replace(/abcde/g,'!')

如果含有特殊字符,需要在特殊字符前面转义(在字符前面加上\),当然每个字符都转义也可以的。例如,就可以这样写replace(/\!\@\#\$/g,',')

这样就可以搞定了,总之正则表达式很重要,本文只是给转义和正则表达式不熟悉的网友写的。


--------------------------------------------------------------------------------

3.特殊字符

javascript 提供了一些特殊字符,允许在字符串中包括一些无法直接键入的字符。每个字符都以反斜杠开始。反斜杠是一个转义字符,表示 javascript 解释器下面的字符为特殊字符。


转义序列 字符 
\b 退格 
\f 走纸换页 
\n 换行 
\r 回车 
\t 横向跳格 (ctrl-i) 
\' 单引号 
\" 双引号 
\\ 反斜杠 
\& 和号

请注意,由于反斜杠本身用作转义符,因此不能直接在脚本中键入一个反斜杠。如果要产生一个反斜杠,必须一起键入两个反斜杠 (\\)。

document.write('the image path is c:\\webstuff\\mypage\\gifs\\garden.gif.');
document.write('the caption reads, "after the snow of \'97. grandma\'s house is covered."');

可以使用这些转义序列来控制位于 <pre> 和 <xmp> 标识之间的文本格式,此外,也可用来控制警告、提示和确认消息框中的文本格式。 



参考地址:http://hi.baidu.com/sandianyu8/item/2d955a8eecdbddcbb17154ae

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值