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

转载 2011年10月13日 14:56:48
 
JavaScript 将字符串转换成数值(整数or浮点数)收藏
2009-05-15 11:49

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/fu90678/blog/item/b98d431baa2d4bf2af5133c2.html

实践项目之深入Javascript字符串实战视频课程

深入Javascript字符串, 快速掌握字符串的核心知识.为后期项目的实战做好准备!
  • 2016年06月15日 16:47

js 字符串转换成数字的三种方法

在js读取文本框或者其它表单数据的时候获得的值是字符串类型的,例如两个文本框a和b,如果获得a的value值为11,b的value值为9 ,那么a.value要小于b.value,因为他们都是字符串形...
  • ufo2910628
  • ufo2910628
  • 2014-11-03 09:08:22
  • 708827

JAVA字符串与整形、浮点类型之间的相互转换总结

1、字符串转化为整形、浮点类型 String s = "100"; //方法一 int a = Integer.parseInt(String s); Long.parseLon...
  • Yan_Ruqi
  • Yan_Ruqi
  • 2017-02-16 23:31:07
  • 7432

两种将字符串转换成浮点数的方法

两种将字符串转换成浮点数的方法 方法一:    char  szString[] = "-2876.99812376443";    double db1;    db1 = atof(szStrin...
  • loomman
  • loomman
  • 2008-11-25 22:09:00
  • 27017

js 字符串转换成数字的三种方法, 取float型小数点后两位数的方法

在js读取文本框或者其它表单数据的时候获得的值是字符串类型的,例如两个文本框a和b,如果获得a的value值为11,b的value值为9 ,那么a.value要小于b.value,因为他们都是字符串形...
  • LANGZI7758521
  • LANGZI7758521
  • 2016-07-26 11:13:10
  • 24642

JavaScript类型转换 (整型---浮点型)

JavaScript类型转换 (整型---浮点型) JavaScript类型转换 (整型---浮点型) 1. 转换函数: js提供了parseInt()和parseFloat()两个转...
  • lixingworkCCC
  • lixingworkCCC
  • 2012-07-11 14:45:11
  • 26261

微信小程序之js 字符串转换成数字的三种方法, 取float型小数点后两位数的方法

    在js读取文本框或者其它表单数据的时候获得的值是字符串类型的,例如两个文本框a和b,如果获得a的value值为11,b的value值为9 ,那么a.value要小于b.value,因为他们都是...
  • qq_23833037
  • qq_23833037
  • 2018-01-13 23:28:29
  • 646

js中将字符串转换成数字

js中将字符串转换成数字有三个函数Number()、parseInt()、parseFloat()这三个函数都可以将数字格式的字符串转换成数字 下面是三种函数的对比区别 var a ="10...
  • qq_31083947
  • qq_31083947
  • 2017-06-12 23:20:58
  • 293

【小折腾--C】字符串转浮点型

/**   * @brief: 从ptr开始扫描字符串,过滤到前面的空格,直到数字或者“+”、“-”号,   * 才开始转换。如果遇到非数字以及字符串结束符'\0'时,结束转换。   * ptr...
  • longfeihufengyun
  • longfeihufengyun
  • 2015-09-21 14:57:42
  • 781

js中使用parseFloat()将一个字符串解析成数字

js中使用parsefloat()函数可解析一个字符串,并返回一个浮点数。该函数指定字符串中的首个字符是否是数字。如果是,则对字符串进行解析,直到到达数字的末端为止,然后以数字返回该数字,而不是作为字...
  • jaryle
  • jaryle
  • 2017-01-09 14:07:32
  • 807
收藏助手
不良信息举报
您举报文章:JavaScript 将字符串转换成数值(整数or浮点数)收藏
举报原因:
原因补充:

(最多只允许输入30个字)