javascript 数字字符串与数字的转换
2015-01-15 18:52
169 查看
数据类型的转换有两种:1:隐式的转换;2:显示的转换。
由于js是弱类型的语言,定义变量不需要指定明确的类型,且类型可以随时更换。
例如:
1:那么若是数字字符串和数字相加会怎么样呢?
当运算符“+”两边一个是数字类型,一个是字符串类型时,js引擎规定进行字符串连接运算而非算术加运算
所以,对于计算结果的运算,要进行数组类型的转换。
显示的转换:
在javascript中,有以下3种方法可以将数据显示转换成数字型。
1:Number(value) :可以将value转换成整数或浮点数。
2:parseInt(value):可以将value转换成整数。
3:parseFloat(value):可以将value转换成浮点数
Number():若不可以转换成数字型,返回NaN。
parseInt(),parseFloat():转换数据时,只转化第一个无效字符之前的所有字符。
例如:
隐式的转换
这个看一段代码:
总结:
数字+字符串:数字转换成字符串。
数字+布尔值:true转换成1,flase 转换成0.
字符串+布尔值:布尔值转换成字符串true或false.【教科书上的】
学习文章:http://www.cnblogs.com/snandy/archive/2011/03/18/1987940.html
由于js是弱类型的语言,定义变量不需要指定明确的类型,且类型可以随时更换。
例如:
<script type="text/javascript"> var a="hello";//这里为字符串 a=200;//这里为数字类型 Int a={};//这里为对象 a=new Array();//这里为数组 </script>
1:那么若是数字字符串和数字相加会怎么样呢?
当运算符“+”两边一个是数字类型,一个是字符串类型时,js引擎规定进行字符串连接运算而非算术加运算
<script type="text/javascript"> var a="12"; var b="15"; console.log(a+b);//out:1215 </script>2:从页面元素取值相加又是什么情况呢?
<!DOCTYPE html> <html> <head> <title></title> </head> <body> <input type="text" id="a"/> <input type="text" id="b"/> <input type="button" onclick="add();" value="相加"/> </body> <script type="text/javascript"> function add(){ var a=document.getElementById('a').value; var b=document.getElementById('b').value; console.log(a+b);//a,b字符串的链接 } </script> </html>这里只是进行的简单的拼接。
所以,对于计算结果的运算,要进行数组类型的转换。
显示的转换:
在javascript中,有以下3种方法可以将数据显示转换成数字型。
1:Number(value) :可以将value转换成整数或浮点数。
2:parseInt(value):可以将value转换成整数。
3:parseFloat(value):可以将value转换成浮点数
Number():若不可以转换成数字型,返回NaN。
parseInt(),parseFloat():转换数据时,只转化第一个无效字符之前的所有字符。
例如:
<!DOCTYPE html> <html> <head> <title></title> </head> <body> <input type="text" id="a"/> <input type="text" id="b"/> <input type="button" onclick="add();"/> </body> <script type="text/javascript"> function add(){ var a=document.getElementById('a').value;//input 12 | 12.9 var b=document.getElementById('b').value;//input 2 | 2.4 //parseInt(); var c=parseInt(a)+parseInt(b); console.log(c);//out:14 | 14 //parseFloat(); var d=parseFloat(a)+parseFloat(b); console.log(d);//out:14 | 15.3 //Number() var e=Number(a)+Number(b); console.log(e);//out:14 | 15.3 } </script> </html>
隐式的转换
这个看一段代码:
<script type="text/javascript"> var a="12"; var b="15"; console.log(b-a);//out:3 </script>“ - ”运算会把字符串a,b隐式的转换成数字再进行算术减法运算。利用这个特性,可以很方便的将String转换成Number
总结:
数字+字符串:数字转换成字符串。
数字+布尔值:true转换成1,flase 转换成0.
字符串+布尔值:布尔值转换成字符串true或false.【教科书上的】
学习文章:http://www.cnblogs.com/snandy/archive/2011/03/18/1987940.html
相关文章推荐
- JavaScript 字符串转换数字
- JavaScript 字符串转换数字
- JavaScript 字符串与数字的相互转换
- javascript如果数字和字符串相加会自动转换为字符串
- JavaScript 字符串转换数字
- (转)JavaScript 字符串转换数字
- javascript学习 - 数字和字符串转换
- JavaScript对象转换为原始值(字符串、数字、布尔值)的过程
- JavaScript字符串&数字间转换
- 字符串内特殊字符在html_javascript_xml等内使用时的转换 ,"缺少十六进制数字"错误的处理
- JavaScript中把数字转换为字符串
- JavaScript 字符串转换数字
- JavaScript:数字与字符串的相互转换
- JavaScript 字符串转换数字
- 补点JavaScript 基础:字符串到数字类型的转换(Number, +, ~~, parseInt, parseFloat)
- JavaScript 字符串转换数字
- JavaScript 字符串转换数字
- JavaScript进阶(四)js字符串转换成数字的三种方法
- javascript的字符串转换为数字的问题
- JavaScript字符串转换为数字的三种方法