【Miaov】JS4-数据类型、类型转换

JS数据类型

这部分主要讲基础的数据类型,概念性的较多,条例分类也比较清楚明了

ECMAScript:标准/核心

JS中的数据类型:number数字类型,string字符串类型,boolean布尔类型,function函数
类型,obj可以添加自定义属性的对象类型(object类型包括array,json,null等等),
undefined未定义类型


数据类型的相互转换
Number();

var a1='+100';
alert(Number(a1));//100

var a1='';
alert(Number(a1))//0

var a1=true;
alert(Number(a1))//1 false->0

var a1=function(){alert(a)};
alert(Number(a1))//NaN

var a1=[];
alert(Number(a1))//0

var a1=['123'];
alert(Number(a1))//123

var a1=['1','2','3'];
alert(Number(a1))//NaN

var json={abc:123};
alert(Number(json))//NaN

var json={};
alert(Number(json))//NaN

var a1=null;
alert(Number(a1))//0

var a1=undefined;
alert(Number(a1))//NaN


parseInt();
遇到非数字的东西就不再转换了

var a='100px';
alert(parseInt(a));//100
alert(parseInt(a,10))--按照十进制转换,更保险一些

var a=true;
alert(parseInt(a))//NaN

parseFloat();
从左往右转,认识一个小数点

var a='12.5万元';
alert(parseFloat(a)) //12.5

用if条件句看parseInt(num)和parseFloat(num)是否相等判断num是整数还是小数

以上三种是显式类型转换(强制类型转换)

 

隐式类型转换

-*/%可以让字符串变成数字
++,--可以让字符串变成数字
><可以让字符串变成数字
+可以让数字变成字符串
!取反布尔值
==

以上如果转不出就会输出NaN


alert('200'-5)//195

alert('10'>'9')//false数字之间的比较和字符串之间的比较不同
alert(!true)//false
alert(!'ok')//false

alert('2'==2)//false


NaN:not a number不是一个数字-->typeof是一个数字类型--数字和数字类型是两回事儿

一旦程序出现NaN肯定进行了非法运算操作;

布尔值属于假,NaN和NaN自己不相等
isNaN()方法 is not a number是不是不是一个数字,帮助判断某些值是不是数字类型
内部根据Number()来转换,根据Number转换的结果来返回结果
数字->false;
非数字->true

 

posted @ 2015-10-23 17:52  chen7  阅读(201)  评论(0编辑  收藏  举报