JS——数据类型转换,判断数据类型(typeof),parseInt与parseFloat的区别,隐式类型转换
2019-05-27 20:56
633 查看
1.将字符串转换为数据
var a1 = '100'; alert(a1+100); //输出的是100100
但是想要的结果时100+100=200
所以应当将a1转换数据类型
alert(Number(a1)); //输出200
2.当值为空值时
var a2 = ' '; alert(a2); //不出现值和结果,因为是空,所以什么都没有
转换为数值型时
alert(Number(a2)); //最后结果出现0
3.值为布尔型
var a3 = true; alert(a3);//结果出现true
转换为数值型时
alert(Number(a3)); //输出1,而false对应的是0
4.函数
var a4 = function(){alert(1);} alert(Number(a4));//最后出现NaN,太多了不能识别转换过来
5.对数组
var a5 = []; alert(Number(a5));//出现结果为0 ——空数组出来的数值结果为0
在数组中添加值,
var a5 = [123]; alert(Number(a5));//出现123
但是需要记住的是不能在数组中给与过多的值,值多了结果就会变成NaN
6.值为null时
var a6 = null; alert(Number(a6));// 结果为0
7.值为未定义
var a7 ; alert(Number(a7));//出现NaN
二:判断数据类型用到typeof
var i = 100; alert(typeof i);//出现结果number
三:parseInt
用Number转换在很多情况下都无法转换,出现NaN
有时候出现非数字时,就可以用到parseInt——解析成一个整数(从左到右,自动识别)
但是parseInt不是整体转换,而是从左到右的转换,一遇到非数字的就不能转换
1.
var b = '100px'; alert(parseInt(b));//出现100,而后面的px直接截断
再或者
var b = '100px12345'; alert(parseInt(b));//出现100,出现在px或者以后的都被截断
2.当第一位不是数字时(加号,减号,空格等都是可以识别的)
四:parseFloat——小数,从左到右,可以识别小数点(合理的小数点)
var b = '12.34元'; alert(parseFloat(b));//最后结果12.34
parseInt和parseFloat一起运用
var num = '200.345'; //判断某一个数值是整数还是小数点的数 if(parseInt(num)==parseFloat(num)){ alert(num+'是整数'); }else{ alert(num+'是小数'); }
五.隐式类型转换
1.其中上面的Number,parseInt,parseFloat等就是显示类型转换+即强制类型转换
2.隐式类型转换
1)- * / %可以让字符串转换之后变成数字
alert(‘200’-3);//最后输出的结果时是197——运用减号后,将字符串强制转换成为了数字
2)+ 变成字符串
alert(200+‘3’); //最后变成了2003——运用加法后将值变成了字符串
3)++ – 将值转换成数字
var a = '10'; a++; alert(a);//最后结果为11
4)> <(大于号和小于号)
alert('10'>9);//结果出现true alert('10'>'9');//结果出现false
数字之间的比较与字符串的比较:
从左到右的比较,即’10‘’与‘9‘中从左到右1小于9,所以false
5)!取反
alert(!true);//结果出现false
alert(!100);//结果false,因为 100是真,取反为假
6)==
alert('2'==2);//结果true,2对应2
相关文章推荐
- js 六种数据类型的区别及bool 转换判断
- js判断复合数据类型的两种方式(typeof不奏效了)
- javascript 数据类型转换(parseInt,parseFloat)
- js 比typeof 更准判断数据类型 更好用的判断语句
- js数据类型隐式转换
- JS基础之变量 数据类型 类型转换 parseInt 函数
- js中判断数据类型的属性typeof、instanceof、 constructor、 prototype
- 判断js中各种数据的类型方法之 typeof() 和 Object.prototype.toString() 详解
- JS学习--数值转换时,Number(),parseInt()和parseFloat()的区别
- JS 数据类型转换和数据有效性判断
- typeof 和 Object.prototype.toString.call 数据类型判断的区别
- 数据类型回顾——数据类型转换(显式和隐式)—JS学习笔记2015-6-3(第47天)
- JS判断数据类型、null与undefined的区别?
- js之数据类型-隐式转换-类型检测 学习总结
- JS之数据类型(Number()、parseInt()、toString()等转换)
- js数据类型隐式转换笔记以及js包装对象
- js数值计算时使用parseInt进行数据类型转换(jquery)
- javascript 数据类型转换(parseInt,parseFloat)
- js中判断数据类型的方法 typeof
- js中的typeof和instanceof的用法和区别(附类型判断方法)