Javascript 基础知识之数据类型

原创
2014/11/09 00:04
阅读数 88

javascript是一种弱类型的脚本语言

 1)var  param ;(根据所赋值的类型确定变量类型,变量类型可以随意改变)

全局变量

1)方法外的变量,或者是方法中未使用var声明的变量

局部变量 

 1)方法中使用var声明的变量

Number类型

1) 小数不能直接使用“==”来判断相等;NaN、Infinity、-Infinity  等

undifined

1) 变量已经声明过但是没有被赋值。

null

 1)声明变量为空值,如 var parma = null ; 

基本数据类型(5 种)

1) Number String  Boolean Undefined Null

引用数据类型

1) Object类型(比如 对象Object 、 数组Array 、日期Date 、 RegExp....) 

2)var pram = {  } ; =new Object() ; = [ ] ; = new Date( ) ;

typeof param

1)typeof param ; 确定param的数据类型。

2)如果param=undefined ; typeof param 为 undefiend

3)如果param=null ; typeof param 为 object ,原因就是null其实是一个空对象的引用,但是如果使用alert(null == undefiend);则会返回 true ;

总结

1)关于null与undefiend的比较

var param = null ;       
var param2 = undefined ; 
alert( (typeof param)+" "+(typeof param2)+" "+(param == param2)+""+(param === param2));
console:object  undefiend  true false


2)关于null与undefiend的生成

如果从未声明过变量就使用这个变量,会发生错误“ ReferenceError: param is not defined

          如果声明过变量从未赋值就使用这个变量,会发生错误“TypeError: param is undefined” 

          如果使用document.getElementById('name'),而name并不存在dom中,则会是 “null"

如果使用一个对象的未定义方法,会发生错误” TypeError: param.sayHello is not a function

3)关于alert的使用

alert(str);默认参数是字符串类型,所以但我们使用alert(object)时,会默认调用object.toString( );类似于java

4)NaN == NaN 是 false  , undefiend == undifend 是true

5)变量的自动转换

=== 等同符:不会发生类型的自动转化!

== 等值符:会发生类型自动转化、自动匹配!


展开阅读全文
打赏
1
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
1
分享
返回顶部
顶部