javascript_04 数据类型

ECMAScript 数据类型  标准  核心

 

数据类型

typeof  判断数据类型

数字型 布尔型 对象类型 函数 字符串 undefined 未定义

数字型  字符型

var s=’1233’  空格也算

charAt()  获取子字符串的方法

s.length          =4

s.charAt(3)     =3

boolean布尔值:true false

多用于判断  真的条件就是true 继续执行  不是则不执行

for也又布尔值的 身影 当符合条件之后就是true了

函数类型

函数类型 function 函数 调用 时候要用一个括号

var fn=function(){alert(1);};

function fn1 (){alert(2);};

对象

obj.ab

------------------

c=123;

对象可以添加自定义属性 ,可以等于一个函数

obj.fn1=function(){xxxxxxxxxxxx}

obj.fn1();  添加方法

------------------

数组var arr=[a,b,c,d,e,f];

arr.push(5,6,7) 给数组加东西 

数组也是一个object;

可以添加自定义属性方法

arr.abc=999;

------------------

json存放数据

------------------

null就是空 没有自定义属性没有任何属性 是一个对象 一个空的对象

------------------

undefined 未定义

更多的时候是程序出问题了  一种状态 
------------------------------------------------------------------------------------------------------------

强制数据类型转换

字符串转化成数字的方法:

Number ();方法   

1.看起来像数字的字符串转化成数字

2.字符串 空和空格 都会转化成0;

3.true –>1  false-> 0

4.不能转的是NaN (函数 object )

5.空数组转化成0  数组是空字符串也是0  数组里面的数字 也能转 [‘013’]=013数组里东西多了也报NaN

6.json 无能为力 空的也不能转 NaN

7.null转化成0

8.undefined NaN

总结: 字符串类型的数字 空字符串 null 布尔  单个array  都能转化

var b=’100px’ Number不能转化

------------------------------------------------------------------------------------------------------------

parseInt();方法

截断型转换

parseInt(b,10)  后面数字是十进制

100px1000000

p以后的所有数字都干掉~

结果100;

认识正负号  过滤0  空格

不认识布尔 不认识小数

 

parseFloat();方法

比parseInt方法

认识一个小数点

当两个方法的值一个样的时候  ===就可以判断是整数还是小数

------------------------------------------------------------------------------------------------------------

隐式类型转换

‘200’-3=197
- * % / 可以  ++ -- > < <=  >= 

取模 求余数【!取反】//取反是布尔值
== 和=== 三个等号是全等  是  数据类型转换的问题 两个就忽略了

alert("10">9);   //true

alert("10">"9");  //false 

alert("10000000">"9"); //false

字符串比较的时候按照编码比较 比的是编码

比较的是一位一位的 第一位干不过后面就干不过了

单个数字pk  9大于任何一个位数


有一个共性 就是无法转换就会  NaN

------------------------------------------------------------------------------------------------------------

NaN

 

NaN

not  a  number

程序出现NaN就是出现非法运算的操作

NaN特性  他不等于 任何东西 包括本身

是Number类型不是数字

布尔值是false

isNaN();

一个方法
isNaN();  用来判断值是不是数字类型的   如果 见到了数字就烦  false

布尔类型也会转化成数字  false

内部是根据number转化的结果 也就是内置 number依靠number进行转化
isNaN  讨厌数字  false  不讨厌NaN  true

讨厌数学(Number) 不讨厌数学系的,萌妹子(NaN);


只要是 HTML中的文本  各种属性值  类型默认全是字符串 不能直接用typeof判断

就可以用isNaN做判断 

两个练习:

1.数组里找东西

2.qq号码

posted @ 2014-09-04 16:17  Crack's_Blog  阅读(157)  评论(0编辑  收藏  举报