js获得文本框的值怎么转化成数值型啊

JavaScript03

js获得文本框的值怎么转化成数值型啊,第1张

javascript主要有以下三种数据类型转换方式:

转换函数:parseInt()和parseFloat()分别将值转换成整数和浮点数。

强制类型转换:Boolean(value)、Number(value)、String(value)将给定的值分别转换成逻辑值、数字(整数或浮点数)及字符串。

弱类型自动转换:字符串与数字进行数学操作符运算时,字符串会自动转为数字。

实例演示:将文本框的值转化成数值型

var a = document.getElementById("num1").value

var b = document.getElementById("num2").value

var c1 = parseFloat(a) + parseFloat(b)   //  函数转换

var c2 = Number(a) + Number(b)  //  强制类型转换

var c3 = a*1 + b*1   // a*1将自动转化为数字类型

小数的话用parseFloat,整数用parseInt。

举个例子:

var myArr=new Array()

myArr[0]="1"

myArr[1]="2.1"

var ma0=parseInt(myArr[0])//myArr[0]中字符串是整数,用parseInt。

var ma1=parseFloat(myArr[1])//myArr[1]中字符串是小数,用parseFloat。

返回结果:ma0=1,ma1=2.1。

当然,也可以对调过来:

var myArr=new Array()

myArr[0]="1"

myArr[1]="2.1"

var ma0=parseFloat(myArr[0])

var ma1=parseInt(myArr[1])

返回结果:ma0=1.0,ma1=2。

复杂一点的:

var myArr=new Array()

myArr[0]="1ABC"

myArr[1]="2.1DEF"

var ma0=parseFloat(myArr[0])

var ma1=parseInt(myArr[1])

返回结果:ma0=1,ma1=2.1。

但如果是:

var myArr=new Array()

myArr[0]="ABC1"

myArr[1]="DEF2.1"

var ma0=parseFloat(myArr[0])

var ma1=parseInt(myArr[1])

返回结果:ma0=null,ma1=null。因为parseInt和parseFloat只能读取字符串前面的数字。