数据类型的转换
1、Number()的使用,遵循“尽量帮你转、整体帮转”的原则。能对以下进行转换
2、parseInt()使用,提取字符串前面数字的部分,其他的类型转不了。"从左到右一个一个识别,是数字则通过"
var b = ' 200px';
alert( parseInt(b) ); //200 parse解析 int整型 从左到右一个一个识别,是数字则通过
var b = ' 200px1111';
alert( parseInt(b) ); //200 遇到识别不了的后面都咔嚓掉
3、parseFloat()使用,"从左到右一个一个识别,是数字则通过,遇到第一个小数点给过,在后面遇到小数点不给过"
如:
var c = '12.34元';
alert( parseInt(c) ); //12
alert( parseFloat(c) ); //只认得第一个小数点 如:12.34.4 使用这个方法得到的是12.34
4、
显式类型转换(强制类型转换):Number()、parseInt(),parseFloat()
隐式类型转换:
+ 200+'3' 结果为:2003 变成字符串
- * / % '200'-3 结果为:197 变成数字
++、-- var a='10';a++;alert(a); 结果为11 变成数字
< 、> 数字比较 字符串的比较
! 取反 把右边的数据类型转换成布尔值
== '2'==2 true 左右两边数据类型值的比较
=== '2'===2 false 左右两边数据类型值和数据类型的比较
5、数字的比较和字符串的比较不同(编码问题):
alert("10">9); 结果为true
alert("10">"9"); 结果为false
alert("1000000">"9"); 结果为false
字符串的比较是一位一位的比较。如上例中的字符串10和字符串9比较是从10拿第一位的"1"出来和"9"比较,9大所以结果为false,后面的不用比了。